Как установить значение по умолчанию реализовано автозаполнение текстового поля?
У меня есть текстовое поле, реализованное с автозаполнением. Вот оно.
<input id="txtcity" />
$("#txtcity").autocomplete({
source: function (request, response) {
$.ajax({
url: '@Url.Action("CityLookup", "PatientDemographic", "")', type: "POST", dataType: "json",
data: { searchText: request.term, maxResults: 10 },
success: function (data) {
response($.map(data, function (item) {
return { label: item.Text, value: item.Text, id: item.Value }
}))
}
})
},
select: function (event, ui) {
$("#CityCode").val(ui.item.id);
},
open: function () {
$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
},
close: function () {
$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
}
});
Это возвращает три результата, скажем, "яблоко", "банан", "капуста". Как установить значение по умолчанию "Banana" во время рендеринга ? я.е, текст=" "банан "" значение="2"?
3 ответов
вы можете установить это значение после инициализации автозаполнения:
$( "#txtcity" ).autocomplete({
// do whatever
}).val('Banana').data('autocomplete')._trigger('select');
Обновление :
http://jsfiddle.net/55jhx/1/вызовите щелчок для первого элемента в ul
чтобы запустить select для автозаполнения:
$("ul.ui-autocomplete li").first().trigger("click");