Возможно, это не лучший "друпал" способ сделать это, может быть, кто-то может улучшить его ...
в вашем файле 'misc / autocomplete.js' найдите:
Drupal.jsAC.prototype.select = function (node) {
this.input.value = $(node).data('autocompleteValue');
};
и измените его на:
Drupal.jsAC.prototype.select = function (node) {
this.input.value = $(node).data('autocompleteValue');
if(jQuery(this.input).hasClass('auto_submit')){
this.input.form.submit();
}
};
затем к форме добавьте:
'#attributes' => array('class'=> array('auto_submit')),
Это приведет к отправке формы независимо от того, как пользователь выберет выбор (кнопка ввода или щелчок мыши)
РЕДАКТИРОВАТЬ: 4 года спустя я получил голосование и понял, что это нужно обновить ... в основном @Azhar прав, вместо того, чтобы редактировать существующий файл, этот код должен быть добавлен в новый файл JS, который загружается после автозаполнения .js.
Как и всегда, когда вы редактируете ядро, вам приходится беспокоиться об обновлениях безопасности ядра, которые могут переопределить ваше изменение и оставить ваш сайт сломанным, а вы изо всех сил пытаетесь его исправить.