使用JQuery檢測<inputtype=“text”>(立即)的所有更改的值有很多種方法。<input type="text">可以改變,包括:按鍵復制/粘貼用JavaScript修改由瀏覽器或工具欄自動完成我希望在JavaScript函數發生變化時(使用當前的輸入值)調用它。我希望它被立即調用,而不僅僅是當輸入失去焦點時。我正在尋找在所有瀏覽器上(最好使用jQuery)的最干凈和最健壯的方法來實現這一點。示例用例:在Twitter注冊頁,用戶名字段的值顯示在url中“http://twitter/用戶名“在它下面。
3 回答

心有法竹
TA貢獻1866條經驗 獲得超5個贊
$('.myElements').each(function() { var elem = $(this); // Save current value of element elem.data('oldVal', elem.val()); // Look for changes in the value elem.bind("propertychange change click keyup input paste", function(event){ // If value has changed... if (elem.data('oldVal') != elem.val()) { // Updated stored value elem.data('oldVal', elem.val()); // Do action .... } }); });

侃侃爾雅
TA貢獻1801條經驗 獲得超16個贊
$("#input-id").on("change keyup paste", function(){ dosomething();})
$("#input-id").on("change keyup paste click", function(){ dosomething();})
live
on
.

慕斯709654
TA貢獻1840條經驗 獲得超5個贊
setInterval
<input type=text id=input_id /><script>setInterval(function() { ObserveInputValue($('#input_id').val()); }, 100);</script>
input
100 ms的潛伏期?
對于許多應用程序來說,100 ms就足夠快了。 在瀏覽器上添加了負載?
通常來說,在頁面上添加大量的重集交換是不好的。但是在這種情況下,添加的頁面加載是無法檢測的。 它不會擴展到很多輸入?
大多數頁面只有少數輸入,您可以在同一個setInterval中嗅探所有輸入。
- 3 回答
- 0 關注
- 428 瀏覽
添加回答
舉報
0/150
提交
取消