Я хотел бы, чтобы автозавершение jquery автоматически завершилось, чтобы выбрать первый элемент в списке, а затем на пробел выберите этот элемент, а затем введите или нажмите. Должен ли я добавить код в файл jquery ui java script или есть способ добавить еще одно событие для этого пространства.
Благодарю вас в передовой Мэтью
Вы должны изменить код компонента ui.autocomplete (не рекомендуется, лучше создать новый), вам нужно изменить "keyCode.ENTER" на "keyCode.SPACE" в следующей строке:
case keyCode.ENTER:
// when menu is open and has focus
if ( this.menu.active ) {
// #6055 - Opera still allows the keypress to occur
// which causes forms to submit
suppressKeyPress = true;
event.preventDefault();
this.menu.select( event );
}
break;
если вы хотите, чтобы обе клавиши (ввод и пробел) работали, вам нужно только написать:
case keyCode.SPACE:
case keyCode.ENTER:
Чтобы получить первый выбранный элемент, вам нужно добавить "автофокус: истина":
$( "#autocomplete" ).autocomplete({autoFocus: true,
source: whatever
});
Здесь вы можете увидеть, как он работает:
Здесь у вас есть версия, где я создаю новый компонент под названием "ui.autocompletespace", который зависит от jqueryui:
Подробнее о компоненте здесь: