我想验证特定的表单字段,以便用户可以输入1到100之间的值;但如果该字段留空,则会自动输入-1。
我的代码在提交时停止-1,因为它似乎不在1到100之间。
以下是一个例子:
var x = document.getElementById('test').value;
if(x !== '') {
if (isNaN(x) || x < 1 || x > 100) {
feedback = feedback + "Input value must be between 1 and 100.\n";
}
}
else {
document.getElementById('test').value = "-1";
}
提交表单后,我会收到上述警告:
输入值必须介于1和100之间。
因为它输入-1并且不会使用该值提交。
有解决方法吗?
答案 0 :(得分:2)
在测试正数范围之前,您需要测试特定情况:
wb.active = 1
答案 1 :(得分:1)
我认为您使用的if语句仅设置document.getElementById('test').value = "-1";
if x !== ''
这意味着如果x变量是一个数字,它永远不会被设置为-1
我还会在第二个if语句中设置值,如下所示
var x = document.getElementById('test').value;
if(x !== '') {
if (isNaN(x) || x < 1 || x > 100) {
feedback = feedback + "Input value must be between 1 and 100.\n";
document.getElement('test').value = -1;
}
}
else {
document.getElementById('test').value = "-1";
}