Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 自动完成搜索名称和代码_Jquery_Jquery Ui_Jquery Ui Autocomplete - Fatal编程技术网

Jquery 自动完成搜索名称和代码

Jquery 自动完成搜索名称和代码,jquery,jquery-ui,jquery-ui-autocomplete,Jquery,Jquery Ui,Jquery Ui Autocomplete,places.json如下所示 [{"CC":"XNR","CN":"Aabenraa"},{"CC":"AAH","CN":"Aachen"},{"CC":"XOA","CN":"Aalbaek"},{"CC":"AAL","CN":"Aalborg"},{"CC":"QFA","CN":"Aalsmeer"}] CN代表国家代码,CN代表国家名称 $(".typeahead").autocomplete({ source: function (request, response)

places.json如下所示

[{"CC":"XNR","CN":"Aabenraa"},{"CC":"AAH","CN":"Aachen"},{"CC":"XOA","CN":"Aalbaek"},{"CC":"AAL","CN":"Aalborg"},{"CC":"QFA","CN":"Aalsmeer"}]
CN代表国家代码,CN代表国家名称

$(".typeahead").autocomplete({
    source: function (request, response) {
        var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" );
        $.ajax({
            url: "places.json",
            dataType: "json",
            success: function (data) {
                response($.map(data, function(v,i){
                    var text = v.CN;
                    if ( text && ( !request.term || matcher.test(text) ) ) {
                        return {
                                label: v.CN.concat(' (',v.CC,')'),
                                value: v.CC
                               };
                    }
                }));
            }
        });
    }
});

如何实现我的代码以同时搜索国家名称和国家代码

您仅在
matcher.test()中检查国家名称。你也应该检查国家代码

更新以下if(条件)


感谢您提供此代码片段,它可能会提供一些有限的短期帮助。通过说明为什么这是一个很好的问题解决方案来正确解释它的长期价值,并将使它对未来有其他类似问题的读者更有用。请在您的回答中添加一些解释,包括您所做的假设。@TobySpeight,谢谢您提供的信息。我已经更新了我的答案。
if ( text && ( !request.term || matcher.test(v.CN) || matcher.test(v.CC) ) ) {