@Zorgios

Как используя JQuery отлавливать событие изменения input поля по его name?

Имеется несколько input полей с различными именами
<div>
  <input name='test1'/>
  <input name='test2'/>
  <input name='stop1'/>
  <input name='test3'/>
</div>

Как, используя JQuery отлавливать любые изменения в полях для ввода с конкретными именами? В данном случае: test1, test2, test3 (stop1 трогать не нужно, нужны действия только в конкретных полях).

Если бы можно было присвоить id полям - вопрос бы решился просто, но такой возможности нет технически, приходится пользоваться именами.
  • Вопрос задан
  • 142 просмотра
Решения вопроса 2
Deonisius
@Deonisius
Родился в 11110110111 году, 11000 января.
В селекторе можно использовать любые атрибуты элементов.
// или перечисляем через запятую
$('[name=test1], [name=test2], [name=test3]').on('input', function(){
	console.log($(this).val());
});
// или таким образом
$('[name^=test]').on('input', function(){
	console.log($(this).val());
});

Есть вариант отталкиваться от родительского элемента. В вашем случае < div > не унифицирован, но если предположить, что он единственный на странице, то подошёл бы и такой вариант:
$('div input:not([name=stop1])').on('input', function(){
	console.log($(this).val());
});
Ответ написан
Mesuti
@Mesuti
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ukrainskiy
@Ukrainskiy
Задать этот вопрос гуглу и пройти по первой ссылке - https://api.jquery.com/change/
id задавать не нужно, нужно задать class
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы