【问题标题】:Show all items if no result matches the key如果没有结果与键匹配,则显示所有项目
【发布时间】:2016-12-07 13:58:06
【问题描述】:

在 JQuery 自动完成中,如果没有与输入的键匹配,我想显示所有结果。我还需要将minLength 限制为3

这是我的代码。我检查了ui.content.length === 0 并触发了$(this).autocomplete('search', $(this).val()),但它不起作用。

$( "#example" ).autocomplete({
      source: availableTags,
      minLength:3,
      response: function(event, ui) {
        if (ui.content.length === 0) {
          $(this).autocomplete('search', $(this).val())
        }
      }
});

【问题讨论】:

  • 澄清一下,如果有部分匹配,您希望它显示结果。如果有 0 个匹配项,您希望它显示所有可能的结果吗?

标签: jquery jquery-ui jquery-ui-autocomplete


【解决方案1】:

以下是适合您的潜在解决方案:

$("#tags").autocomplete({
    source: availableTags,
    minLength: 3,
    response: function(event, ui) {
      if (ui.content.length === 0) {
        $.each(availableTags, function(i, v) {
          ui.content.push({
            label: v,
            value: v
          });
        });
      }
    }
  });

工作示例:https://jsfiddle.net/Twisty/7gpLtq6c/

如果它是空的,我们只是将所有可能的结果推回数组中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-19
    • 1970-01-01
    • 1970-01-01
    • 2015-12-15
    • 1970-01-01
    相关资源
    最近更新 更多