Как правильно обработать регистр «без результата» в jQuery Autocomplete функция, что «без результата» не кликабельны и не выбираемы?
В части "parse" я добавляю элемент "no result":
parse: function(data) {
var array = new Array();
if (!data || data.length == 0) {
array [0] = { data: { Title: "No results" }, value: "No results", result: "No results"};
}
}
Таким образом, когда нет результатов, отображается только «Нет результатов». Но его можно выбрать и щелкнуть, что не в порядке, потому что это значение затем передается на ввод текста.
EDIT
Полная часть JavaScript:
<script type="text/javascript">
var NoResult= "No result";
$(function() {
$("#txtTextAnimal").autocomplete('<%= Url.Action("Find", "Animal") %>', {
dataType: 'json',
delay: 100,
parse: function(data) {
var rows = new Array();
for (var i = 0; i < data.length; i++) {
rows[i] = { data: data[i], value: data[i].Title, result: data[i].Title };
}
if (rows.length == 0) {
rows[0] = { data: { Title: NoResult}, value: "", result: NoResult};
}
return rows;
},
formatItem: function(item) {
return item.Title;
}
}).result(function(event, item) {
if (item.Title != NoResult) {
$("#hidAnimalId").val(item.Id);
$("#hidAnimalId").closest("form").submit();
}
});
});
</script>