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

<input type="hidden" name="blk" onchange="test();" value="" />
当使用js脚本是blk中的value值发生改变时为啥没触发onchange事件儿,怎么样才能执行test()方法呢?

慕妹3242003
浏览 2250回答 3
3回答

噜噜哒

input 事件~ 或 trigger('change')

米脂

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")触发事件即可,丑陋一点而已。
打开App,查看更多内容
随时随地看视频慕课网APP