自动选择单一匹配jQuery UI自动完成组合框

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动选择单一匹配jQuery UI自动完成组合框相关的知识,希望对你有一定的参考价值。

我使用了一个稍微受欢迎的Combobox UI元素,这是一个自定义的jQuery UI Autocomplete扩展:see here

我想,如果有一个匹配项来选择匹配项并同时触发所选事件,那么特别是在Autocomplete Combobox中更改此部分代码应该是解决方案:

    _source: function (request, response) {
                var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
                response(this.element.children("option").map(function () {
                    var text = $(this).text();
                    var value = $(this).val();
                    if (this.value && (!request.term || matcher.test(text)))
                        return {
                            label: text,
                            value: value,
                            option: this
                        };
                }));
            }

我不熟悉jQuery map函数,虽然我非常熟悉jQuery和vanilla javascript,但我的语法对我来说并不熟悉,尽管我理解函数在做什么。

我想要像:

if(match.count == 1)
   //fire select event and/or select option in hidden select list
答案
var data = [
  "Apple",
  "Orange",
  "Pineapple",
  "Strawberry",
  "Mango"
];

$(document).ready(function () {
    $( "#fruits" ).autocomplete({
        source: data,
        autoFocus: true,
    });
});

以上是关于自动选择单一匹配jQuery UI自动完成组合框的主要内容,如果未能解决你的问题,请参考以下文章

jQuery UI 自动完成组合框选项需要在 iPhone 上双击

JQuery UI完成自动匹配的的下拉列表步骤

占位符在页面加载时打开 jQuery UI 自动完成组合框(IE10)

如何使用 jquery ui 自动完成使匹配的文本变为粗体?

jQuery UI 自动完成 - 输入与结果集不匹配时不显示结果

Jquery UI自动完成匹配首字母输入