2014-02-10 20 views
-1

我在jQuery中對文本框的onchange事件有點混淆。我有一個文本框和一個小jQuery的片段,以檢測用戶是否已經粘貼了一句:在jQuery中檢測文本框的變化

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

有沒有像paste檢測每當有在文本框中變化的任何功能?即當用戶輸入內容時,立即調用一個函數(而不是提交),然後做一些事情。任何幫助表示讚賞

+1

[On input change event?]可能重複(http://stackoverflow.com/questions/6458840/on-input-change-event) – alecellis1985

回答

1

使用.change函數。

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

這工作,如果

  • 用戶粘貼一些
  • 用戶類型
  • 用戶刪除文本

到/從文本框。全球範圍內,當文本框的值發生變化時。

Jquery Documentation

+0

http://api.jquery.com/change/for docs – Huangism

+1

當他將文本粘貼到textarea中時,他正在討論trrigering,但onchange不會像這樣行事,是嗎? –

+1

。如果用戶鍵入任何內容,則.change不起作用,他必須在測試箱之外單擊。然後才能工作 – parameswar

0

您可以使用此。還檢查附加的JSFiddle。

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

http://jsfiddle.net/AUSd6/

0

如果您在使用最新的jQuery庫,下面的腳本可以是有益的

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

有關詳情,請登錄http://api.jquery.com/on/

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。每個函數都有兩個重載版本