I have created a JavaScript function for validation of US Driving License. Issue is function is browser dependent. That is function creates error in IE but run fine in MOZILLA AND CHROME..
I have validated it as first three digit should be either 0 or 1 or 2 or 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;
}
You can’t do string array indexing like
chkVal38[0]in older versions of IE.I would suggest this cleaned up and simplified code:
Working example here: http://jsfiddle.net/jfriend00/ZUajd/
Changes: