JQ JS 改变value值不触发change事件

JQ改变value值不触发change事件

Change事件触发有两个必要条件:值改变、失去焦点。所以当使用JQ改变值时,控件没有失去焦点,所以不会触发。

目前验证有效的解决办法,只能是手动触发change事件

如:

$('input[name="change_val"]').click(function(){

$('input[name="a"]').val('a');

$('input[name="a"]').change();

});

在网上找了很久资料,很多人的回答是IE使用propertychange,其他浏览器使用input事件可以解决。但是自己试了下,propertychangeIE8浏览器中,JQ改变值可以,但是input在其他浏览器中是不可以的。

Input事件在增加或减少字符就会触发,但是这个的前提也是需要获得焦点的,所以JQ改变值是无法触发的。

Propertychange事件在IE8测试下,在JQ改变值时这个事件是可以触发。

猜你喜欢

转载自blog.csdn.net/landylxy/article/details/77984874
今日推荐