當前我在輸入字段上使用keydown事件來驗證30個字符的限制。當用戶輸入第31個字符時,驗證消息出現「請輸入30個字符」。但是,當我通過簡單地雙擊文本框並按任何字母/數字來選擇整個文本,然後文本不會刪除,並顯示消息「請輸入30個字符」。我想在用戶按字母/數字時刪除整個文本。目前我正在使用:將輸入值還原爲最後一個有效字符串
$('#inputBox').live("keydown", function(event) {
var inputLength = $(this).val().length;
var boolPassValidation = false;
if (event.keyCode === 8) {
boolPassValidation = true;
}
if (inputLength >= 30 && !boolPassValidation) {
alert("Please enter a valid PO number, 30 characters max.");
}
return false;
} else return true;
});
任何建議將是很大的幫助。
Reaso n:這是因爲您在該處理程序中返回false,使jQuery停止按鍵的默認行爲(插入鍵)。您的驗證器被執行,但未插入字符。 –