我試圖阻止輸入密鑰被放入textarea,但它似乎不工作。jQuery:防止輸入密鑰
$('#comment').keyup(function(event) {
if (event.text.charCodeAt() == '10') {
event.preventDefault();
}
});
我試圖阻止輸入密鑰被放入textarea,但它似乎不工作。jQuery:防止輸入密鑰
$('#comment').keyup(function(event) {
if (event.text.charCodeAt() == '10') {
event.preventDefault();
}
});
我已經寫上jsfiddle.net,在那裏你可以試試這個代碼
每個人都有正確的答案:)
$('#comment').keypress(function(event){
if (event.keyCode === 10 || event.keyCode === 13)
event.preventDefault();
});
示範小
嘗試用.keypress
和使用return false
;
祝你好運!
在事件中使用event.keyCode
:
$('#comment').keydown(function(event) {
if(event.keyCode == 13) return false;
//carry on...
});
爲什麼不是keydown事件? – 2011-01-20 23:30:10
@ŠimeVidas我想你可以使用`keydown`事件。 – 2011-01-20 23:32:29
$('#comment').keypress(function(event) {
if (event.keyCode == 13) {
event.preventDefault();
}
});
Wha? Enter鍵的鍵碼是`13`,而不是`10`。 – 2011-01-20 23:27:53
儘管這裏提供的答案將會防止某人輸入回車,它不會阻止某人粘貼回車。
您需要對文本(在javascript或服務器端)進行一些後處理才能將其刪除。
但問題是,爲什麼呢?爲什麼不簡單地使用<input type="text"></input>
,它會自動處理,因爲它是單行輸入元素?
我不認爲這個事件正在觸發,我怎麼知道'$('#comment')`是否正確地成爲我想要的? – 2011-01-20 23:30:58
記住要掛鉤的變化事件以及其他人已顯示的鍵盤/向下/按鍵。在這裏的每個解決方案中,人們仍然可以將換行符粘貼到textarea中,以防止需要刪除它們;) – 2011-01-20 23:45:44