在IE11和chrome中,jquery自动完成显示搜索框为空

时间:2014-08-26 08:26:30

标签: jquery autocomplete jquery-autocomplete

我正在使用jquery autocomplete创建一个搜索栏。

以下是我的自动填充代码:

$('#search_bar input#search_box').autocomplete({
        source: function( request, response ) {
        $.ajax({
            url: "service/search.php",
            type: "POST",
            data: {action:'getSuggest',categoryId:$('#search_bar #selectSearch').val(),searchText:request.term},
            dataType: "json",
            cache: false,
            success: function( data ) {
            response( $.map( data['0'], function( Convalue ) {
                return {
                label: Convalue['name'],
                value: Convalue['name'],
                id: Convalue['ID']
                }
            }));
            },
            error: function (e,a,b) {
            jAlert('error in searching products'+e,'Failed');
            }
        });
        },
        cacheLength: 0,
        minLength: 1,
        select: function( event, ui ) {
        event.preventDefault();     
        $('#search_bar input#search_box').val();
        if(ui.item)
        {
            var categoryId=$('#search_bar #selectSearch').val();
            if(categoryId=='0'){
            if(ui.item.id=='1')
                location.replace('custom-granule.php');
            else if(ui.item.id=='2')
                location.replace('custom-raw.php');
            else
                location.replace('product-info.php?id='+ui.item.id);
            }
            else if(categoryId=='1')
            location.replace('product-symptom.php?id='+ui.item.id);
            else if(categoryId=='2')
            location.replace('product-pattern.php?patternId='+ui.item.id);
            else
            location.replace('product-category.php?id='+ui.item.id);
        }
        else {
            jAlert("Nothing selected, input was " + this.value);
        }
        }
    });

现在我的问题是:IE和Chrome显示提醒消息'搜索框是空的'在搜索上。 IE和Chrome在显示此警报框时不一致。它显示的某个时间和其他时间它没有显示。 FF似乎没问题。

1 个答案:

答案 0 :(得分:0)

search_bar输入#search_box

带#运算符的选择器可能不是每个浏览器中的右选元素。你可以通过F12

在chrome Console中测试它