Переходите между элементами, используя клавишу Enter, включая select2 - PullRequest
0 голосов
/ 05 апреля 2020

Я использую следующий код для перемещения по элементам формы с помощью клавиши ввода. Проблема в том, что этот код пропускает элементы select2.

        $('body').on('keydown', 'input, select', function(e) {
            if (e.key === "Enter") {
                var self = $(this), form = self.parents('form:eq(0)'), focusable, next;
                focusable = form.find('input,a,select,button,textarea').filter(':not([disabled]):not([tabindex="-1"]):visible');
                next = focusable.eq(focusable.index(this)+1);
                if (next.length) {
                    next.focus();
                } else {
                    //form.submit();
                }
                return false;
            }
        });

1 Ответ

1 голос
/ 05 апреля 2020

Измените keydown на keyup

  $('body').on('keyup', 'input, select', function(e)

Причина keydown уже обработана в библиотеке select2 для выбора элемента

...