我注意到即使我只输入空格,Select2小部件服务选项与远程数据也在进行通话。这通常会返回一个空数组,但我想完全取消这个调用。
所以这就是我所做的。
答案 0 :(得分:0)
Select2插件允许我们通过transport
选项定义我们自己的AJAX调用处理程序。
来自文档:
Select2使用ajax.transport中定义的传输方法向API发送请求。默认情况下,此传输方法是jQuery.ajax,但可以更改
因此,您可以完全消除不必要的呼叫。
$('select').select2({
...
ajax: {
transport: function (params, success, failure) {
if (!params.data.q.trim().length) {
return false;
}
var $request = $.ajax(params);
$request.then(success);
$request.fail(failure);
return $request;
}
}
...
})
我blog的更详细的摘录。
答案 1 :(得分:0)
Select2有一个minimumInputLength
选项,可以为您处理。当用户需要输入更多字符时,它会显示通知,然后在输入足够的信息时发出请求。