Как проверить значение элемента INPUT при изменении? - PullRequest
0 голосов
/ 27 октября 2009

У меня есть элемент INPUT типа TEXT, и я хочу выполнить действие, если значение INPUT не равно значению по умолчанию. Как мне это сделать? Я посмотрел в обработчик событий «изменения» в jQuery, но он работает только для элементов SELECT. Во всяком случае, вот что я хочу сделать ..

Пример:

<input type="text" name="test" value=\"Default..\" />

$('input[name=test]').FireWhenValueIsChangedThroughTyping() {
 if (value!='Default..') { DoStuffHere(); }
}

Ответы [ 3 ]

2 голосов
/ 27 октября 2009

Вы можете использовать функцию клавиши :

$('input[name=test]').keydown(function() {
 if (value!='Default..') { DoStuffHere(); }
});

Возможно, вы также хотите привязать к change (который работает для ввода текста - он срабатывает при размытии) - например, кто-то может вставить с помощью мыши.

0 голосов
/ 27 октября 2009

Решение в виде $ .fn:

$.fn.FireWhenValueIsChangedThroughTyping = function(defaultvalue){
 $(this).keydown(function(){
  if(this.value != defaultvalue){
    //DoStuffHere
  }
 });
};
0 голосов
/ 27 октября 2009

Вы можете использовать для этого событие blur . Он срабатывает, когда пользователь отходит от входа. Если вам нужны триггеры при вводе пользователем, используйте событие нажатие клавиши . (См. Вкладку «Примеры» на связанных страницах.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...