jQuery Validate:必填字段为空但验证为true

时间:2012-01-24 17:43:56

标签: jquery jquery-validate

以下是我在网络控制台中看到的内容:

validationRules.rules.NameOnCard.required //true

document.OForm.NameOnCard.value //""

$("#OForm").validate().element("#NameOnCard") //true

该字段是必填字段,为空,且有效。我做错了什么?

作为一些背景知识,我以编程方式在表单显示余额之前不需要付款信息,然后我需要它。如果我删除if / then代码,它会正确验证。但据我所知,我正确地告诉验证者现在需要该字段,所以空字段应该验证为false,是吗?

2 个答案:

答案 0 :(得分:1)

您需要通过执行以下操作来检查表单是否有效:

if($("#OForm").valid()){
 // valid
}

答案 1 :(得分:0)

让您所需的参数像这样有条件:

NameOnCard: {
required: function(element){
      var fooValue = $('#fooVar').val();
      if (isNaN( fooValue )){
          return false; 
      } else {
        if ( fooValue > 0) {
           return true;
        } else {
           return false;
        }
      }
}
}