[英]jQuery.map() to Parse results from select2 ajax call
我有以下select2 ajax调用。 如何使用jquery $ .map()解析返回的json结果。 从用户数组中,我需要获取文本和值结果。 从寻呼机数组中,我需要获取TotalItemCount。 我下面的内容似乎无效,即搜索结果似乎未显示在选择列表中。 也没有显示控制台错误,因此我不确定我在做什么错。
var url = '@Url.Action("GetEmployees", "Employees")';
var pageSize = 20;
$(".js-data-example-ajax").select2({
ajax: {
url: url,
dataType: 'json',
delay: 250,
data: function (params) {
return {
term: params.term, // search term
page: params.page
};
},
processResults: function (data, params) {
params.page = params.page || 1;
return {
results: $.map(data, function (users) {
return {
text: users.Text,
id: users.Value
}
}),
pagination: {
more: (params.page * pageSize) < data.pager.TotalItemCount
}
};
},
cache: true
},
minimumInputLength: 2,
placeholder: "-- Select --",
allowClear: true
});
返回的json如下:
{
"pager":{
"PageCount":1,
"TotalItemCount":1,
"PageNumber":1,
"PageSize":20,
"HasPreviousPage":false,
"HasNextPage":false,
"IsFirstPage":true,
"IsLastPage":true,
"FirstItemOnPage":1,
"LastItemOnPage":1
},
"users":[
{
"Disabled":false,
"Group":null,
"Selected":false,
"Text":"Joe Blogs",
"Value":"97306aa4-d423-4770-9b45-87a701146b10"
}
]
}
我是对的。 我没有正确使用jQuery.map()。 应该如下:
results: $.map(data.users, function (users) {
return {
text: users.Text,
id: users.Value
}
}),
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.