我在 select2 中有一个非常简单的条件问题:如果没有搜索查询,立即发出获取请求,否则如果有搜索查询 - 自上次按下键后等待 2000 毫秒并发出获取请求(这基本上是 quietMillis/delay 属性的方式在 select2 中默认工作)。但我发现,在您已经初始化 select2 实例 之后,不可能更改 quietMillis/delay 。例如,如果我这样初始化它:
$('#container').select2({
closeOnSelect: false,
allowClear: true,
placeholder: ' ',
ajax: {
quietMillis: 0,
url: function(params, page) {
//some code
return URL + params;
},
results: function(data, page, term) { //some code },
cache: true,
}
});
之后,quietMillis 将始终为 0,我将对搜索输入中的每个按键事件发出 GET 请求。所以我需要帮助将 quietMillis 更改为 2000,当用户输入时,当用户想要所有结果时更改为 0。
这个也不行
$('#container').data('select2').opts.ajax.quietMillis = 2000