-1
我動態地添加了一些輸入字段(都有一個「addToQuantityTotal_1」類名) ,並希望用戶只能在裏面輸入數字。JQuery:「event.preventDefault()」不適用於動態創建的元素...?
所以我使用了「上」關鍵字(因爲這是唯一的它,我已經在頁面加載完成後創建的元素的工作方式),一切工作正常,但: 「event.preventDefault()」
它標識用戶按非數字鍵,但仍將其添加到輸入字段。
$('body').on('keydown', 'input.addToQuantityTotal_1', function() {
alert("keyCode = " + event.keyCode);
// Allow: backspace, delete, tab, escape, and enter
if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || event.keyCode == 13 ||
// Allow: Ctrl+A
(event.keyCode == 65 && event.ctrlKey === true) ||
// Allow: home, end, left, right
(event.keyCode >= 35 && event.keyCode <= 39)) {
// let it happen, don't do anything
return;
}
else {
// Ensure that it is a number and stop the keypress
if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105)) {
alert("this is NOT a number!");
event.preventDefault();
}
}
});
任何幫助將不勝感激,謝謝!
你錯過了關於函數參數$('body')的事件'參數on('keydown','input.addToQuantityTotal_1',function(event){' – Daniele
下一次檢查控制檯 –
它如何識別沒有事件參數的非數字按鍵??? – Archer