Я не знаю, что вы подразумеваете под "тогда текстовое поле будет автоматически обновлено", поэтому я собираюсь догадаться, что вы хотите вернуть курсор обратно в это поле.Для проверки длины значения при выводе табуляции вы хотите событие .change()
или .blur()
:
$("input[type=text]").change(function() {
if (this.value.length <= 4) {
alert("Please enter more than 4 characters.");
this.focus();
return false;
}
});
Демо: http://jsfiddle.net/XHKRh/
Будет запущено событие размытиякаждый раз, когда фокус покидает поле;событие изменения не будет инициировано снова, если пользователь сразу же снова покинет поле, не меняя его.Я предпочитаю использовать изменения в сочетании с дополнительной проверкой при отправке формы, чтобы пользователь не продолжал получать уведомления (хотя на самом деле я бы вообще не показывал предупреждение, я бы поместил сообщение на следующей странице).в поле).