Требуется ввести пароль и нажмите Enter, чтобы запустить фоновое событие. Кажется, это очень простое требование, но оно сталкивается со многими трудностями.
В основном есть текстовое поле ввода пароля в контенте HTML и кнопка для запуска фоновых явлений.
1. После того, как текстовое поле Textbox получит фокус, нажмите «Ввод» напрямую, и страница будет обновлена.
После тщательного изучения кода выясняется, что, когда на странице есть только одно управление текстовым окном, страница будет освежаться при нажатии Enter.
Как справиться с этим: добавьте скрытый элемент управления текстовым полетом на страницу.
Конкретный принцип неизвестен!
2. Используйте jQuery для реализации метода:
$ (document) .ready (function () {$ ("#tbpassword"). Focus (); $ ('#bpassword'). Keydown (function (e) {if (e.keycode == 13) {$ ("#ctl00_contentbody_btnaccept_linkbutton") [0] .click ();}});3. По разным причинам я не могу использовать метод реализации jQuery, поэтому я должен переключиться на JS. Его совместимость является самой проблемной проблемой.
document.getElementbyIdx_x_x ("tbpassword"). onkeypress = function (event) {var keynum; if (window.event) // ie {keynum = window.event.keycode; } else if (event.which) // netscape/firefox/opera {keynum = event.which; } if (keynum == 13) document.getElementByidx_x_x ('ctl00_contentbody_btnaccept_linkbutton'). Click (); }иллюстрировать:
Прочитайте клавиши клавиатуры под т.е.
KeyNum = event.KeyCode; // буква d, keynum = 100 keyChar = string.fromCharcode (KeyNum); // конвертировать ключ в символ D
Читать клавиши клавиатуры в Firefox:
keynum = event.which; // буква d, keynum = 100 keyChar = string.fromCharcode (KeyNum); // конвертировать ключ в символ D
Например, в т.е. есть только атрибуты ключевых кодов, в то время как Firefox обладает атрибутами и атрибутами Charcode, а Opera имеет Key -код и какие атрибуты.
Поэтому эта проблема совместимости была решена в jQuery.
Выше приведено в этой статье, я надеюсь, что это будет полезно для каждого обучения.