我有一个表单,其中包含“您的帐单地址与您的送货地址相同”字段。如果用户单击单选按钮“否”,则显示隐藏的ul#billingAddress。如果ul#billingAddress中包含的字段可见,那么它是必需的,也就是说ul有display:block。jQuery验证插件 - 只在可见时验证隐藏元素
如何为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中的每一个。
谢谢!
您是否试过让它们不仅看不见,而且还将它们设置为禁用?这只是一个猜测,但由于禁用的表单字段无法传输,所以我期望他们不会进行验证。 – Tomalak 2010-08-15 21:19:35
我不应该让他们禁用,我只是希望他们只在可见时进行验证。除非让他们禁用更容易? – 2010-08-15 21:26:36
我的意思是让他们都看不见*和*禁用。用jQuery,这很简单。 – Tomalak 2010-08-15 21:28:10