Как привязать событие изменения текстового поля точно при вводе числа?

0

Я пытаюсь пройти через ячейки сетки Судоку 9 * 9. Когда в текстовых полях введена цифра от 1 до 9, я просто хочу предупредить.

        $('table tr td input').on({"change": function () {
                var cell = $(this).val();
                alert("Cell Value = " + cell);
        }});

Вышеупомянутый код предупреждает только о том, когда пользователь вытаскивает курсор из текстового поля. Но я хочу, чтобы это было, как только он вошел. Как это сделать?

Теги:

3 ответа

1
Лучший ответ

Вы можете использовать метод input как событие:

$('table tr td input').on({"input": function () {

В соответствии с вашими комментариями вы должны использовать событие keyup потому что input событие не дает вам доступ к коду:

$('input').on({
   "keyup": function (e) {
      var cell = $(this).val(),
          kc = e.which || e.keyCode; // get the keycode
      if (kc !== 8 && kc !== 46) { // alert only if not backspace and delete
          alert("Cell Value = " + cell);
      }
   }
});
  • 0
    Да: это лучше, чем keyup, потому что он также будет работать, если что-то вставить в коробку с помощью мыши.
  • 0
    @MauricePerry абсолютно.
Показать ещё 7 комментариев
2

Попытайтесь использовать событие keyup в этом контексте,

$('table tr td input').on({"keyup": function () {

Процедурная демонстрация

  • 0
    Да или "вход"
  • 0
    @MauricePerry я не мог получить тебя .. :)
Показать ещё 2 комментария
0

Вы должны использовать событие key up для получения значения

$('table tr td input').on({"keyup": function () {
                var cell = $(this).val();
                alert("Cell Value = " + cell);
        }});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню