Как прослушивать несколько событий, таких как изменение и ввод, но запускать только одно за раз.
Пример:
Использование этого кода для прослушивания событий, но при вводе это срабатывает дважды.
Демонстрация:
https://jsfiddle.net/h6sny738/2/
$(document).on("change input", '.test', function(event) { console.log("test"); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <input class="test">
Назовите свою функцию и прикрепите разных слушателей с разными целями:
var myFunc = function(event) { console.log('test', event.type, event.target.tagName); }; $(document) .on('change', 'select.test', myFunc) .on('input', 'input.test', myFunc);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <input class="test"> <select class="test"> <option>1</option> <option>2</option> </select>