Jquery验证多个条件

时间:2013-09-26 00:52:58

标签: javascript jquery validation jquery-validate

我正在尝试验证具有多个条件的字段。我已经通过单一条件进行验证,但我不确定如何添加addl条件。这是我到目前为止所做的:

priceEstimate: {
          required: function() {
          return $('#jobType').val() != '8';
          }
        }

我还需要确保#jobType的值不等于'9'或'10'。我尝试使用或运算符,这似乎没有做到这一点。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

priceEstimate: {
          required: function() {
          var jobType = $('#jobType').val();
             if (jobType < '8' && jobType > 10)
             {
                 return true;
             }else{
                 return false;
             }
          }
        }

有可能更简单的方法来写它......但是那样做会。 http://www.w3schools.com/js/js_comparisons.asp


回应杰里米的评论:

priceEstimate: {
    required: function ()
    {
        var jobType = Number($('#jobType').val());
        var _return = true;
        switch (true)
        {
            case (jobType <= 1):
            case (jobType >= 8 && jobType <= 10):
                  _return = false;  
                break;
        }
        return _return;
    }
}

好的,我们在这里做的是一个级联开关。表达式设置为true,因此它将运行每个案例......然后我们将逻辑放在每个案例中。

我们知道我们不想要1或0,所以我只是将它设置为false如果它等于1或更低,在这种情况下没有中断,它将只是运行到下一个案例并验证更进一步,所以你想要尝试并保持最少的情况 - &gt;为了你自己的理智而无所不能,大声笑。

此外,我正在使用Number()来充实输入中的数值,以防万一,这样我们也不必用引号('10')封装我们所有的检查,它们就是像实际的数字一样对待,而不仅仅是表示可能被转化为某种会使你的努力失败的逻辑。