jQuery验证插件 – 仅在可见时验证隐藏元素

我有一个表单,“您的帐单地址与您的送货地址相同”字段.如果用户单击单选按钮“否”,则显示隐藏的ul#billingAddress.如果ul#billingAddress中包含的字段是可见的,那么ul是显示:block.

如何为jquery validate.js编写一个自定义addMethod,只有在字段可见时才需要这些addMethod?这是我没有的工作.

$.validator.addMethod ("BillingSameAsShipping",function(value,element) {
   var billingFields = ['billingAddress1','billingAddress2','billingCity','billingState','bilingZip']
   if ($("#billingAddress").is('visible') && billingFields.val('') {
       return false;
   } else 
       return true;
 },"Please fill in the required billing information" );

这显然是笨蛋.我需要使它为每个在var中的工作.

谢谢!

解决方法

可见检查的问题是这个部分:.is(‘visible’)它需要是:.is(‘:visible’)来使用 :visible selector.

作为替代方案,您可以使用ignore option做一些更简单的操作,如下所示:

$("#myForm").validate({
  //other options
  ignore: ':hidden'
});

如果需要,这种方法可以使用标准的必需规则.

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...