select2延迟不起作用

时间:2018-01-30 15:17:09

标签: jquery ajax jquery-select2

我使用下面的代码初始化选择框上的select2。但是延迟无效,请求会立即转到服务器。

$(".multi_select").select2({
    multiple: true,
    allowClear: true,
    minimumInputLength: 2,
    delay: 5000,
    ajax: {
      url: "/search.json",
      dataType: 'json'
    }
  });

我面临的另一个问题是,我在快速输入时遇到 abort 错误,这意味着以前的请求不会中止。昨天当我添加上面的代码,没有延迟,它没有'中止'错误工作正常。今天,它会出现中止错误,无论是否有延迟以及延迟的失败。

我使用的是v4.0.3,从昨天起项目没有变化,所以我不明白突然发生了什么。

1 个答案:

答案 0 :(得分:1)

必须将delay参数添加到ajax部分:

$(".multi_select").select2({
    multiple: true,
    allowClear: true,
    minimumInputLength: 2,
    ajax: {
      url: "/search.json",
      dataType: 'json',
      delay: 5000
    }
});

请参阅:https://select2.org/data-sources/ajax#rate-limiting-requests