JQuery 自动完成搜索两个字母

JQuery Autocomplete search both to letters

本文关键字:两个 搜索 JQuery      更新时间:2023-09-26

我实现了自动完成,它使用 ajax post 从数据库中获取所有数据并将它们作为项目添加到自动完成中。

如下所示

jQuery.ajax({
     url: "--url--",
     dataType: 'jsonp',
     success: function(data){
        jQuery("#location_finder").autocomplete({
            source: function( request, response ) {
                var lookup = jQuery.ui.autocomplete.escapeRegex( request.term );
                var matcher = new RegExp( "^" + lookup, "i" );
                response( jQuery.grep(data, function(item){
                     return matcher.test(item);
                }));
            }
        });
    },
});

发布后的数据为:

data = ['Berti','Simon','Çarli','Cherpa'];

在输入字段中输入字母"C"时,仅显示"Cherpa",但我尝试向用户显示"Çarli"。我如何处理它并为用户提供字母"C"和"Ç"的选项?提前谢谢。

你可以试试:

var lookup = jQuery.ui.autocomplete.escapeRegex( request.term );
if(lookup.indexOf('C') != -1 || lookup.indexOf('Ç') != -1) {
    lookup.replace("C", "(C|Ç)");
    lookup.replace("Ç", "(C|Ç)")
}
var matcher = new RegExp( "^" + lookup, "i" );