簡體   English   中英

jQuery UI:自動完成 - 如何在數組中搜索多個值?

[英]jQuery UI: Autocomplete - How do I search multiple values within an array?

如果你看看下面的JS :(直播: http//jsfiddle.net/RyanWalters/dE6T3/2/

var projects = [
    {
        value: "jquery",
        label: "jQuery",
        desc: "the write less, do more, JavaScript library",
        icon: "jquery_32x32.png"
    },
    {
        value: "jquery-ui",
        label: "jQuery UI",
        desc: "the official user interface library for jQuery",
        icon: "jqueryui_32x32.png"
    },
    {
        value: "sizzlejs",
        label: "Sizzle JS",
        desc: "a pure-JavaScript CSS selector engine",
        icon: "sizzlejs_32x32.png"
    }
];


$("#autocomplete").autocomplete({
    source: function(request, response){
        var matcher = new RegExp( $.ui.autocomplete.escapeRegex( request.term ), "i" );
        response( $.grep( projects, function( value ) {
            value = value.value || value.desc || value.icon;
            return matcher.test( value );
        }) );
    }
});

我正在嘗試使自動完成搜索projects數組中的valuedescicon字段。 但是,當我在搜索框中輸入值時,我只能搜索value字段。 descicon字段完全被忽略。

我該如何制作它以便我可以在三個字段中的任何一個中搜索文本?

value = value.value || value.desc || value.icon;

這會將值設置為第一個“thuthy”值(始終為value.value )。

嘗試這樣的事情:

response($.grep(projects, function(value) {
    return matcher.test(value.value) || matcher.test(value.desc) || matcher.test(value.icon);
}));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM