Javascript jQuery Validate-resetForm()未按预期运行
有问题的地点是 “单击此处查看宣传册”和“了解Palisade Palms的更多信息”都会显示一个灯箱,其中包含要填写的相同HTML表单…链接“了解更多信息…”还会更改表单中的一些HTML(隐藏表单字段的值和所需字段) 我正在为lightbox使用Colorbox,对于它的onClosed事件,我有以下内容来重置表单:Javascript jQuery Validate-resetForm()未按预期运行,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,有问题的地点是 “单击此处查看宣传册”和“了解Palisade Palms的更多信息”都会显示一个灯箱,其中包含要填写的相同HTML表单…链接“了解更多信息…”还会更改表单中的一些HTML(隐藏表单字段的值和所需字段) 我正在为lightbox使用Colorbox,对于它的onClosed事件,我有以下内容来重置表单: onClosed: function() { $('#brochure-form label em').remove(); $('#brochur
onClosed: function() {
$('#brochure-form label em').remove();
$('#brochure-form').data('validator').resetForm();
}
现在问题来了:
- 用户尝试提交“宣传册”表单,但验证失败。用户关闭灯箱
- 用户打开“了解更多信息”灯箱,并尝试提交表单……现在,它不再使用正确的验证规则(只需要电子邮件和推荐人),而是要求填写所有字段(就像“宣传册表单”一样)
谢谢大家 我通过分别在onComplete和onClosed colorbox事件期间手动将“required”类添加到所需的输入并将其删除来修复它 在此之前,我使用添加所需的输入规则
$('#brochure-form').validate({
rules: {
first_name: "required",
last_name: "required",
email: "required",
phone: "required",
address: "required",
city: "required",
state: "required",
zip: "required",
referrer: "required"
}
});
这些规则没有通过resetForm()函数正确清除
您可以在中看到工作代码
您可以在上看到旧的、不工作的版本实际上,我想清除验证规则不是resetForm()函数的责任。我只是有一个非常奇怪的例子(我知道,我试图说服客户不要使用同一个该死的表单两次,请给用户除了同一个表单之外的另一个选项,sheesh)