我正在尝试验证具有多个条件的字段。我已经通过单一条件进行验证,但我不确定如何添加addl条件。这是我到目前为止所做的:
priceEstimate: {
required: function() {
return $('#jobType').val() != '8';
}
}
我还需要确保#jobType的值不等于'9'或'10'。我尝试使用或运算符,这似乎没有做到这一点。
非常感谢任何帮助。
答案 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')封装我们所有的检查,它们就是像实际的数字一样对待,而不仅仅是表示可能被转化为某种会使你的努力失败的逻辑。