Select2 改变 quietMillis/动态延迟

问题描述 投票:0回答:0

我在 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
javascript jquery jquery-select2 jquery-select2-4
© www.soinside.com 2019 - 2024. All rights reserved.