我遇到了一些JS表单验证问题。Javascript表单验证。街牌号码。如何将接受的数字设置为1但接受数字1-99999
我已经在我的HTML头部分与函数规则链接了一个外部.JS脚本。
我在.JS脚本文件下面的函数规则:
function IsValid5DigitStreetNumber(str) {
// Return immediately if an invalid value was passed in
if (str+"" == "undefined" || str+"" == "null" || str+"" == "")
return false;
var isValid = true;
str += "";
// Rules: zipstr must be 5 characters long, and can only contain numbers from
// 0 through 9
if (IsBlank(str) || (str.length != 1) || !IsInt(str, false))
isValid = false;
return isValid;
}
我有下面的JS代码在我的HTML头部分
if(IsValid5DigitStreetNumber(document.orderbooks.querySelectorAll("[name=streetnumber]")[0].value)) {
} else {
alert("Street Name invalid! Please enter a valid 1-99999 digit street number!:");
return false;
}
它的每一次投掷的警告消息即使我输入了正确的号码。
我希望能够接受1到99999之间的街道号的HTML表单中的数字。我为了让它工作而改变了什么?
这是测试'str.length'为1。你肯定会需要删除条件 –
有你在调试这个检查'document.orderbooks.querySelectorAll(“[name = streetnumber]”)'的结果是什么?它真的为这个选择者找到了什么吗? –
考虑到HTML表单控件只能包含文本,你正在做很多奇怪的检查。另外,我们不知道'IsBlank()'或者“IsInt()”是什么样的。 (注意:在我的国家,街道地址不一定有数字。) –