鍍金池/ 問答/PHP  HTML/ jQuery檢測隱藏域hidden 觸發(fā)onchange事件失敗

jQuery檢測隱藏域hidden 觸發(fā)onchange事件失敗

<input type="hidden" name="blk" onchange="test();" value="" />
當(dāng)使用js腳本是blk中的value值發(fā)生改變時(shí)為啥沒觸發(fā)onchange事件兒,怎么樣才能執(zhí)行test()方法呢?

回答
編輯回答
青瓷

input 事件~ 或 trigger('change')

2017年8月26日 00:14
編輯回答
夢囈

onchange事件只能在輸入框失去焦點(diǎn)時(shí)內(nèi)容有變化時(shí)觸發(fā),我猜你是想監(jiān)聽輸入事件,請用onkeyup,這樣每次輸入字符都會觸發(fā)事件。

2017年12月19日 23:20
編輯回答
別硬撐

onchange只要在獲得焦點(diǎn),然后再失去焦點(diǎn)后才會觸發(fā)。直接dom操縱賦值可以擴(kuò)展jquery,添加一個_val方法,替代jq自己的val

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

給input賦值時(shí)這樣使用 $('input[name=blk]')._val(12345)即可.

看你的場景,不一定要像上面一樣擴(kuò)展jQuery。如果僅僅有一兩處是使用,你也可在使用val賦值完成后,在直接調(diào)用trigger("change")觸發(fā)事件即可,丑陋一點(diǎn)而已。

2017年6月2日 20:48