表单验证,对特定值进行例外处理

时间:2017-01-09 20:24:56

标签: javascript jquery html forms

我想验证特定的表单字段,以便用户可以输入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并且不会使用该值提交。

有解决方法吗?

2 个答案:

答案 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";
        }