为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery检测隐藏域hidden 触发onchange事件失败

jQuery检测隐藏域hidden 触发onchange事件失败

PHP
慕妹3242003 2019-03-10 21:40:19
<input type="hidden" name="blk" onchange="test();" value="" />当使用js脚本是blk中的value值发生改变时为啥没触发onchange事件儿,怎么样才能执行test()方法呢?
查看完整描述

3 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

input 事件~ 或 trigger('change')

查看完整回答
反对 回复 2019-03-18
?
米脂

TA贡献1836条经验 获得超3个赞

onchange只要在获得焦点,然后再失去焦点后才会触发。直接dom操纵赋值可以扩展jquery,添加一个_val方法,替代jq自己的val

        $.fn.extend({_val:function(newVal){
            var originalVal = $(this).val();
            if(newVal!==originalVal) {
                $(this).val(newVal);
                $(this).trigger("change");
            }
        }})

给input赋值时这样使用 $('input[name=blk]')._val(12345)即可.

看你的场景,不一定要像上面一样扩展jQuery。如果仅仅有一两处是使用,你也可在使用val赋值完成后,在直接调用trigger("change")触发事件即可,丑陋一点而已。

查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 2249 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信