如果字段为空,则需要Jqueryvalidation下拉列表

如果#category字段为空,我正在尝试下拉列表。

谢谢!

JQUERY ATTEMPT#1:

$("#uploadDocsForm").validate({ rules: { name: { required: true, minlength: 2, maxlength: 255 }, cat_id: { required: function(element) { return $("#category").val() == ''; } } }, messages: { name: 'Please enter a Document Name.', cat_id: 'Please select a Category.' } }); 

JQUERY ATTEMPT#2:

 $("#uploadDocsForm").validate({ rules: { name: { required: true, minlength: 2, maxlength: 255 }, cat_id: { required: { depends: function(element) { return $("#category").val() == ''; } } } }, messages: { name: 'Please enter a Document Name.', cat_id: 'Please select a Category.' } }); 

HTML:

 
Please Select Category ------------------------ test cat

 $("#uploadDocsForm").validate({ rules: { name: { required: true, minlength: 2, maxlength: 255 }, cat_id: { required: { depends: function(element) { return $("#category").val() == ''; } } } }, messages: { name: 'Please enter a Document Name.', cat_id: 'Please select a Category.' } }); 

depends函数现在检查是否填充了category元素,如果是,则第二个是必需的。 否则它是可选的(意思是可以填充)。

用例:

  • 填写类别,cat_id为空:无效
  • 填写类别,cat_id填充:有效
  • 类别为空,cat_id为空:有效
  • 类别为空,cat_id已填充:有效

我似乎不再支持’依赖’了。

我使用以下内容并且它有效:

 

请注意选项值=“” ,这会导致validation失败,因为val为空

 $("#uploadDocsForm").validate({ rules: { name: { required: true, minlength: 2, maxlength: 255 }, cat_id: { required: true } } }, messages: { name: 'Please enter a Document Name.', cat_id: 'Please select a Category.' } });