检测jquery中文本框的变化

时间:2014-02-10 19:49:49

标签: javascript jquery onchange

我在jquery中对文本框的onchange事件有点困惑。我有一个文本框和一个小的jquery片段来检测用户是否粘贴了某些内容:

$("#testid").bind("paste",function(){ do something.})

是否有像paste这样的函数可以在文本框中发生更改时检测到?即,当用户输入内容时,立即调用函数(不提交),并执行某些操作。任何帮助表示赞赏

4 个答案:

答案 0 :(得分:1)

使用.change功能。

$("#testid").change(function(){ 
    //do something.
});

这是有效的,如果

  • 用户粘贴内容
  • 用户类型
  • 用户删除文字

进入/来自文本框。全局,当文本框的值发生变化时。

Jquery Documentation

答案 1 :(得分:0)

你可以用它。还要检查附带的JSFiddle。

$("#txtBox").on('change', function(e){ 
    alert('txtBox has changed: ' + $(this).val());
});

http://jsfiddle.net/AUSd6/

答案 2 :(得分:0)

如果你使用最新的jquery库,下面的脚本可以是有帮助的

$( "#testid" ).on( "change", function() {
  //do something.
});

详情请访问http://api.jquery.com/on/

答案 3 :(得分:0)

如果您必须在用户按下键盘上的键时立即检测到更改,则以下是3种方法非常有用。 KEYDOWN,按键时,KEYUP

Keydown--> would be called when your keyboard key is down.

Keyup --> called when user leaves the key after typing the character.

keypress--> is called as soon as user press the key on the keyboard.

还有更改方法,但是当有人在文本框中输入单词或任何字段后单击页面上的任何位置或移动到下一个输入字段时,会调用此方法。

这里是代码如何使用它们。

$("#yourcontrolId").keyup(function(){

});

同样你也可以使用其他人2。每个函数都有两个重载版本