У меня есть сгенерированное системой поле ввода, которое ожидает, что его значение будет числовым и более 1000.
Это HTML для поля
<input type="text" name="fr_goal" id="fr_goal" value="" size="15" maxlength="15">
У меня работает этот JS, который позволяет мне пройти почти весь путь, НО на самом деле я не могу сказать, является ли значение больше или равно минимальному значению 1000, которое мне требуется.
$('#fr_goal').on('keyup', function(evt) {
$("#fr_goal").removeClass('don-active');
var value = evt.target.value;
if (value.length === 0) {
evt.target.className = 'invalid-amount';
return;
}
else if ($.isNumeric(value) && value >= 1000) {
evt.target.className = 'valid-amount';
}
else {
evt.target.className = 'invalid-amount';
$(this).val('');
$(this).attr('placeholder', 'VIP goal must be greater than $1,000');
}
});
Теперьelse if
- это мой желаемый результат, в идеале я знаю, что он числовой и больше 1000.
Но происходит то, что, как только я ввожу число, по умолчанию используется другой случай, поскольку число меньше 1000.
Кто-нибудь знает, как прослушать этот вход, если он не «активен» или не используется, чтобы увидеть, что в него вставлено?
В идеале, мне не нужно полагатьсяна отправку формы, чтобы получить содержимое поля, а затем представить сообщение об ошибке. Я хотел бы иметь возможность делать все это в режиме реального времени
Любая помощь очень ценится!