Я внедряю easyautocomplete, и он работает. Я не могу понять, как заставить его автоматически выделять первое значение в списке предложений при его отображении. Для этого нет встроенной опции (автофокус, selectFirst ...)
Я понял, что для этой цели следует использовать 'onShowListEvent', но я не достаточно опытен в jQuery, чтобы выяснить, что это должно быть.
list: {
match: {
enabled: true
},
onClickEvent: function() {
var value = $("#indicator-search-bar").getSelectedItemData().indicator; //get the id associated with the selected value
$("#indicator-search").val(value).trigger("change"); //copy it to the hidden field
$(event.target).closest('form').submit();
},
onKeyEnterEvent: function() {
var value = $("#indicator-search-bar").getSelectedItemData().indicator; //get the id associated with the selected value
$("#indicator-search").val(value).trigger("change"); //copy it to the hidden field
$(event.target).closest('form').submit();
},
onSelectItemEvent: function() {
var value = $("#indicator-search-bar").getSelectedItemData().indicator; //get the id associated with the selected value
$("#indicator-search").val(value).trigger("change"); //copy it to the hidden field
},
onShowListEvent: function() {
console.log("List shown");
}
},
В тот момент, когда вы вводите что-то в форму поиска и происходит совпадение, отображаются предложения, и вы получаете консольный вывод «Список показан».
Ни один элемент не выделен, но если я могу сделать первый выделенный элемент, когда отображается список, пользователь может затем отправить форму с помощью клавиши ввода без нажатия клавиши или выбора с помощью курсора. Это идея.