我已經創建了用於驗證美國駕駛執照的JavaScript函數。問題是功能依賴於瀏覽器。也就是說功能在IE中產生的錯誤,但在Mozilla和Chrome運行正常..JavaScript中的許可證編號驗證
我已經驗證了它作爲第一個三位數字應該是0或1或2或3
//license number
var strFilter = /^[0-9]*$/;
var chkVal36 = document.getElementById("license").value;
var chkVal37 = document.getElementById("license").value.length;
var chkVal38 = document.getElementById("license").value;
if ((!strFilter.test(chkVal36)) || ((chkVal36 !== "") && (chkVal36 === 0)) || (chkVal36 !== "") || (chkVal37 !== 8) || ((chkVal38[0] !== 0) && (chkVal38[0] !== 1) && (chkVal38[0] !== 2) && (chkVal38[0] !== 3))) {
alert("Please enter valid 8-digit license number\r\n(Only digits)");
document.getElementById("license").focus();
document.getElementById("license").style.background = "#DFE32D";
document.getElementById("license").value = null;
return false;
}
你會得到什麼錯誤?您應該刪除所有對document.getElementById的額外調用,並將其替換爲:var license = document.getElementById(「license」);我也會改變你的正則表達式爲/^[0-9] + $ /,因爲+會匹配1或更多,那麼你不需要檢查一個空字符串。 – row1
如果我使用輸入'12332111',那麼它會返回錯誤和警報。根據我的情況,我已經用0-3中的任何一個數字1 –
@ row1:你能否以正確的方式寫下它。 –