我正在尝试做很多事情,但是当输入根本不是数字时,它不会返回false标志。在JAVAScript类似C语言中探索每个字符的正确方法是什么。
var phonenumber = document.forms["signupform"]["phonenumber"].value;
var numberok = true;
var numberstr = "0123456789";
for(var i=0;i<phonenumber.length;i++){
for(var j=0;j<numberstr.length;j++){
if(phonenumber.charAt(i) != numberstr.charAt(j){
numberok = false;
break;
}
}
}
if(numberok == false ){
alert("Enter Correct Phone Number");
return false;
}
我将您的代码设置为仅使用一个循环,并使用indexOf
方法查看数字是否在您的numberstr
。
在实际代码中,有更好的方法来查看某物是否为数字,但是我想保留您在此处使用的方法,因为您特别询问过要检查字符串中的每个数字。
var phonenumber = "9994";
var numberok = true;
var numberstr = "0123456789";
for (var i = 0; i < phonenumber.length; i++) {
var char = phonenumber.charAt(i);
// In modern browsers could also be written as:
// var char = phonenumber[i];
if (numberstr.indexOf(char) === -1) {
numberok = false;
break;
}
}
if (numberok) {
alert("Phone number is good");
} else {
alert("Enter Correct Phone Number");
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句