jQuery автозаполнение фокуса следующий элемент управления - PullRequest
0 голосов
/ 30 июня 2010

Я использую автозаполнение jquery и хочу, чтобы он фокусировался на конкретном элементе управления после выбора элемента из списка автозаполнения. Я попытался $('#nextelement').focus(), и он получает фокус, но фокус сразу возвращается к управлению автозаполнением. Как сохранить фокус на следующем элементе управления, когда автозаполнение закрывается?

[править] Я использую плагин автозаполнения, который поставляется с виджетом Yii CAutoComplete, который в документации гласит:

Ответы [ 2 ]

2 голосов
/ 30 июня 2010

Вы пробовали:

setTimeout(function() {
  $('#nextelement').focus();
}, 1);

чтобы изменить фокус после завершения текущего цикла события?

0 голосов
/ 30 июня 2010

Для меня это пахнет логикой / случаем использования точно когда и что.

Если вы выберете значение автозаполнения, которое действительно, вы можете проверить состояние изменения элемента управления в фокусе автозаполнения.

Что если вы выберете один и как? (нажал, нажал Enter, только что изменил и т. д.)

Я бы подумал, что лучше использовать событие .change () для сфокусированного элемента, а затем сосредоточиться на следующем элементе в вашей форме - который зависит от вашей конструкции страницы - брат, следующий вход, следующий по id, следующий братья и сестры в классе, на что обратить внимание, это последний элемент и т. д.

...