针对hidden属性的文本框或select等元素,如何在通过JS改变其值时,触发change事件呢?
在日常的项目中,经常会因为各种问题,搞一堆hidden属性的input文本框(甚至select下拉框),当我们通过js去给这些form属性赋值的时候,是不会触发元素的change事件的,那么此时该如何做呢?
jQuery change()方法
定义和用法
当元素的值发生改变时,会发生 change 事件。
该事件仅适用于文本域(text field),以及 textarea 和 select 元素。
change() 函数触发 change 事件,或规定当发生 change 事件时运行的函数。
注释: 当用于 select 元素时,change 事件会在选择某个选项时发生。当用于 text field 或 text area 时,该事件会在元素失去焦点时发生。
将函数绑定到 change 事件
规定当被选元素的 change 事件发生时运行的函数。
$(selector).change(function)
触发change事件
触发被选元素的 change 事件。
$(selector).change()
所以,当我们在赋值后可以加上change()即可触发change事件,即:
$(selector).val(new_value).change();