2009-07-02 75 views
5

检测文本输入框中的变化,我可以使用键控,焦点和模糊来检测文本输入中的大部分内容更改,但是如果用户执行复制并粘贴到文字输入,我如何捕捉这个变化?这里的问题在于,用户粘贴时输入已经处于焦点。在html和javascript中使用jquery/javascript

回答

3

文本框有一个OnChange事件,当a)文本框失去焦点并且文本框内的值发生更改时触发。

+0

不幸的是,这并不用于粘贴工作,因为重点是不能丢失用户的东西粘贴到文本框中 – user121196 2009-07-02 04:05:33

+0

你不抓住PASTE,你会发现当用户离开文本框时值已被修改。 – 2009-07-02 05:49:58

4
$("#myinput").change(function(){ 
    // whatever you need to be done on change of the input field 
}); 

// Trigger change if the user type or paste the text in the field 
$("#myinput").keyup(function(){ 
    $(this).change(); 
}); 

// if you're using a virtual keyboard, you can do : 
$(".key").live('click',function(){ 
    $("#myinput").val($("#myinput").val()+$(this).val()); 
    $("#myinput").change(); // Trigger change when the value changes 
});