Обработчик событий ввода текста - PullRequest
0 голосов
/ 31 августа 2011

У меня есть текстовый ввод и подпрограмма обработчика testFunc (input.value)

testFunc должен вызываться, когда

  1. Когда нажата алфавитная клавиша
  2. когда на клавишу возврата возвращается обновленное значение (т. Е. Когда начальный ввод равен 1234, когда на клавишу возврата удаляется с конца, ввод должен быть равен 123 для процедуры testFunc)
  3. Если входное значение равно 1234, а обратная клавиша нажата откуда-то посередине, т.е. 1234, то testfunc должен называться testFunc (234).
  4. 2, 3 тоже должно быть похоже на клавишу DELETE.

Я пытался использовать onkeypress и onkeyup, но кое-что не получается, когда обработчик testFunc не получает обновленное значение (или) сама подпрограмма testFunc не вызывается.

Может ли кто-нибудь сообщить мне, как я могу решить эту проблему или есть ли какие-либо существующие API в Javascript

Ответы [ 2 ]

3 голосов
/ 31 августа 2011

Вы можете использовать событие HTML5 input, которое вызывается при изменении входного значения и вызывается после изменения значения.В сочетании с обходным решением IE он удивительно совместим.См. Следующий ответ:

jQuery клавиатурные события

0 голосов
/ 31 августа 2011

В каких браузерах?Далее всегда отображается текущее значение ввода при каждом нажатии клавиши:

  <script type="text/javascript">

  function show(s) {
    document.getElementById('msg').innerHTML = s;
  }

  </script>

  <input type="text" onkeyup="show(this.value);">

  <div id="msg"></div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...