Потенциально простая проблема с автозаполнением jQuery UI превзошла меня. Мой источник
var ac = [
{
label: "One Thing",
value: "One-Thing"
},
{
label: "Two Thing",
value: "Two-Thing"
},
]
Я вызываю виджет с
$(function() {
$( "#search" ).autocomplete({
source: PK.getAutocompleteSource(),
focus: function( event, ui ) {
$("#search").val(ui.item.label);
return false;
},
select: function( event, ui ) {
$("#search").val(ui.item.label);
PK.render(ui.item.value);
}
});
});
Все работает отлично. Когда я ввожу в поле ввода #search
, соответствующая метка отображается в раскрывающемся списке, а когда я select
выполняется правильный поиск. Виджет даже показывает label
в поле ввода #search
, поскольку я выбираю разные элементы в раскрывающемся меню, используя клавиши со стрелками (или мышь). За исключением того, что, как только я нажму "Enter", виджет заполнит поле ввода #search
с помощью value
вместо label
. Поэтому поле показывает One-Thing вместо One Thing.
Как я могу это исправить? Наверняка, что я ожидаю, это более разумное поведение, не?