$('#empcontact').blur(function(){
var stri = $('#empcontact').val();//the input element
var numbers = "0123456789";
var flag = false;
for(var x=0;x<stri.length;x++){
var ch = stri.charAt(x);
var n = numbers.indexOf(ch);
if(n === -1){//why does it always resolve to true
flag = true;
break;
}
else{
}
}
if(flag){
alert("Not a number");
$('#empcontact').val(" ");
$('#empcontact').focus();
}
});
I don't know why it always resolves to true even when numbers are passed also when characters are passed.
numbersneeds to be an array to use.indexOf. "n === -1" will never make sense. "===" should only be used for '0' and '1'.