如果我的 jQuery 自动完成请求返回空,我想将“无结果”添加到下拉列表中。但我到底该怎么做呢?
在此示例中,我删除了一些内容以缩短/使代码更简单:
$(element).autocomplete({
source: function (request, response) {
$.ajax({
success: function (data) {
response(data);
}
});
},
response: function(e, ui){
if (ui.content.length === 0) {
// Could I do something here?
}
},
select: function(e, ui){
// Do stuff here
return false;
}
// This is not triggered if DB returns empty
}).data( "ui-autocomplete" )._renderItem = function( ul, item ) {
return jQuery( "<li></li>" )
.data( "ui-autocomplete-item", item )
.append( "<a id='" + item.id + "'>"+ item.name + "</a>" )
.appendTo( ul );
}
最佳答案
在您的响应对象中,添加以下内容:
response: function(event, ui) {
if (!ui.content.length) {
var noResult = {
value: "",
label: "No results found"
};
ui.content.push(noResult);
} else {
$("#message").empty();
}
},
<强> JSFiddle
关于jquery - 如何将 "No results"项目添加到我的自动完成中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25727939/