В моем приложении ASP.Net MVC у меня есть автозаполнение jQuery в текстовом поле. У меня есть все, что нужно для отображения используемых в настоящее время имен элементов, и я хочу заставить пользователя ввести совершенно НОВОЕ имя элемента. То есть автозаполнение действует как руководство к тому, что существует, но в конечном итоге пользователь должен ввести полностью использованное строковое значение.
Я хочу, чтобы пользовательский интерфейс сигнализировал, выбран ли используемый в данный момент элемент (будет проверена пыльница на стороне сервера, когда отправлено сообщение о публикации), поэтому на данный момент есть просто простое предупреждение ().
Мой сценарий выглядит следующим образом:
$(document).ready(function() {
$('#combobox').autocomplete('<%= Url.Action("ProjectIdList", "LookUp") %>', {
delay:10,
minChars:1,
matchCase: 0,
matchSubset: 1,
autoFill: true,
maxItemsToShow:10,
cacheLength: 10,
onItemSelect:selectItem,
onFindValue:selectItem
});
});
Обратите внимание на разметку:
onItemSelect: selectItem, onFindValue: selectItem
У меня есть следующий сценарий:
function findValue(li) {
if (li != null) return alert("This Project Id cannot be used");
}
function selectItem(li) {
findValue(li);
}
Однако, Я не могу запустить эти события . Чего мне не хватает?
В качестве альтернативы, есть ли лучший способ сделать это?