https://select2.github.io/examples.html#data-ajax
对于select2,我想:
但是,我似乎无法同时提供ajax
和data
参数。
有什么建议吗?感谢。
已添加代码段
function installShopSelect2() {
var url = "/ajax/brandEnterprise/findShops.mapi";
"use strict";
$('#shopid').select2({
ajax: {
type: "GET",
url: url,
contentType: "application/json; charset=utf-8",
dataType: "json",
delay: 250,
//async: false,
data: function (params) {
return {
keyword: params.term,
besId: selectedBes,
page: params.page
};
},
processResults: function (data, params) {
// parse the results into the format expected by Select2
// since we are using custom formatting functions we do not need to
// alter the remote JSON data, except to indicate that infinite
// scrolling can be used
params.page = params.page || 1;
return {
results: data,
pagination: {
more: (params.page * 30) < data.total_count
}
};
},
cache: true
},
escapeMarkup: function (markup) {
return markup;
},
//data: $.getJSON(url, {besId: selectedBes, keyword: ''}, function (data) {
// return {results: data};
//}),
placeholder: "--Please search--",
minimumInputLength: 2,
allowClear: true
});
}
答案 0 :(得分:1)
我解决这个问题的方法是设置minimumInputLength = 0,编写一个自定义ajax传输器来检查搜索项的长度,当它等于0时,我用固定的默认值调用成功回调,否则如果大于0我只需执行ajax调用并返回响应。