當用戶在文本框中輸入時,我有一個文本框,並點擊輸入它應該提醒該值,並且如果用戶更改值,它也應該警告。所以會有兩個事件按鍵和改變。我想用最少的代碼來調用它。沒有重複的代碼。點擊輸入並更改火災事件
$('#txt').keydown(function (e){
if(e.keyCode == 13){
alert('you pressed enter ^_^');
}
})
當用戶在文本框中輸入時,我有一個文本框,並點擊輸入它應該提醒該值,並且如果用戶更改值,它也應該警告。所以會有兩個事件按鍵和改變。我想用最少的代碼來調用它。沒有重複的代碼。點擊輸入並更改火災事件
$('#txt').keydown(function (e){
if(e.keyCode == 13){
alert('you pressed enter ^_^');
}
})
可以列出多個事件作爲第一個參數(雖然你仍然必須處理每個事件):
$('#txt').bind('keypress change', function (e){
if(e.type === 'change' || e.keyCode == 13) {
alert('you pressed enter ^_^');
}
});
我使用目的綁定,因爲OTS的小提琴使用JQ 1.5 0.2
謝謝這真的是我需要的 – Wazdesign 2012-03-15 15:26:39
像這樣的事情?
$('#txt')
.keydown(function (e) {
if(e.keyCode == 13){
alert('you pressed enter ^_^');
}
})
.change(function(e) {
alert('you changed the text ^_-');
});
嘗試live
方法:
$("#txt").live({
change: function(e) {
alert('you changed the value');
},
keydown: function(e) {
if (e.keyCode == 13) {
alert('you pressed enter ^_^');
}
}
});
這就是我將如何處理這個問題。
注:我使用$ .live()(V.1.3)而不是$。對()(V1.7),也返回false所以我不明白髮射了1次以上的事件。
$('#txt').live('keypress change', function(e) {
if (e.type === 'keypress' && e.keyCode == 13) {
alert('you pressed enter');
return false;
} else if (e.type === 'change') {
alert('you made a change');
return false;
}
});
什麼是你的問題?似乎你已經到了那裏。 – 2012-03-15 14:20:03
@Felix我想要按鍵和更改事件。與用戶更改值一樣,點擊外部應該提醒。 – Wazdesign 2012-03-15 14:24:27
然後使用http://api.jquery.com/bind/。 – 2012-03-15 14:30:20