У меня есть несколько текстовых входов на HTML-странице с классом = «min_value», мне нужно добавить некоторую проверку на эти текстовые входы с помощью jQuery, показана основная проверка, по существу, значение вводится ниже 250.00, значение текстового поля устанавливается равным 250,00.Объединение функций .each и .change
Это хорошо работает с одним текстовым вводом с классом «min_value», но не при наличии нескольких текстовых входов с именем класса. Можно ли изменить этот код, чтобы проверка выполнялась на каждом текстовом входе и изменялось только значение этого ввода текста?
jQuery(function ($) {
$(".min_value").each(function(){
$(".min_value").change(function(){
var min_value = $(".min_value").val();
if(min_value <= 250){
$(".min_value").val('250.00');
alert('The Minimum Value can not be less the 250.00');
}
});
});
});
В обработчике изменения вам необходимо обратиться к текущему элементу, вы можете использовать 'this' ссылку на это. Также нет необходимости в каждом цикле. 'jQuery (function ($) { $ (". min_value "). change (function() { var min_value = $ (this) .val(); if (min_value <= 250) { $ (this) .val ('250,00'); alert ('Минимальное значение не может быть меньше 250,00'); } }); }); ' –
Вы не можете закодировать событие, инкапсулирующее его. В DOM jQuery связывает событие с правилом выбора, которое вы прошли просто. Это срабатывает, когда срабатывает «selector» vs «тип события», например, щелчок, изменение, фокус или что-то еще .. – RPichioli