我正在使用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似乎没问题。
答案 0 :(得分:0)
带#运算符的选择器可能不是每个浏览器中的右选元素。你可以通过F12
在chrome Console中测试它