亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jQuery-檢測隱藏輸入字段上的值更改

jQuery-檢測隱藏輸入字段上的值更改

慕容708150 2019-10-15 14:28:12
我有一個隱藏的文本字段,其值通過AJAX響應進行更新。<input type="hidden" value="" name="userid" id="useid" />當此值更改時,我想觸發一個AJAX請求。誰能建議如何檢測更改?我有以下代碼,但不知道如何查找值:$('#userid').change( function() {      alert('Change!'); }) 
查看完整描述

3 回答

?
慕碼人2483693

TA貢獻1860條經驗 獲得超9個贊

所以這很晚了,但是我發現了一個答案,以防萬一它對遇到此線程的任何人有用。


對隱藏元素的值更改不會自動觸發.change()事件。因此,無論您在哪里設置該值,您都必須告訴jQuery觸發它。


function setUserID(myValue) {

     $('#userid').val(myValue)

                 .trigger('change');

}

這樣的話


$('#userid').change(function(){

      //fire your ajax call  

})

應該能按預期工作。


查看完整回答
反對 回復 2019-10-15
?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

由于隱藏的輸入不會在更改時觸發“更改”事件,因此我使用MutationObserver來觸發此操作。


(有時隱藏的輸入值更改是由其他一些您無法修改的腳本完成的)


在IE10及以下版本中不起作用


MutationObserver = window.MutationObserver || window.WebKitMutationObserver;


var trackChange = function(element) {

  var observer = new MutationObserver(function(mutations, observer) {

    if(mutations[0].attributeName == "value") {

        $(element).trigger("change");

    }

  });

  observer.observe(element, {

    attributes: true

  });

}


// Just pass an element to the function to start tracking

trackChange( $("input[name=foo]")[0] );


查看完整回答
反對 回復 2019-10-15
  • 3 回答
  • 0 關注
  • 575 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號