Подтвердить что ты не робот

Почему jQuery.val(значение) не отправляет какое-либо событие из элемента DOM?

Когда мы используем метод jQuery.Val( value ) над элементом DOM, чтобы изменить его значение.

не должен ли элемент отправлять событие, информирующее о том, что его значение изменилось? -Я хотя событие "изменение" будет отправлено.

Если это не так, почему?

Live Demo

4b9b3361

Ответ 1

Он не отправляется, это просто не происходит, когда он программно изменяется. Тем не менее, вы можете активировать событие, когда это необходимо:

$('#Anne').val('Jenny').change();

Вы можете протестировать его здесь.

Обоснование? Если пользователь что-то изменил, вам может потребоваться отреагировать, но если вы что-то изменили, вы знаете, что произошло, и увольнение обработчика событий может быть полностью расточительным... так что вам нужно позвонить этому обработчику событий, если это необходимо.