使用 jQuery 验证,有没有一种方法可以在不引用创建的对象的情况下重置表单?

发布于 2024-12-11 05:57:27 字数 332 浏览 0 评论 0原文

我在全局 JS 文件中有一个通用的 jQuery 验证调用:

$('form').each(function() {
    $(this).validate();
});

这样,网站上的任何表单都可以通过简单地提供元数据来启用验证。但是,现在我想重置表单,因为我正在执行 AJAX 提交。在官方网站上,它说使用创建的对象重置表单:

var validator = $('#someForm').validate();

问题是,使用我的通用验证器设置,我没有对创建的对象的引用。有什么方法可以在我的情况下取回它吗?

I have a generic jQuery validation call in a global JS file:

$('form').each(function() {
    $(this).validate();
});

This way, any forms on the website can enable validation by simply providing metadata. However, now I want to reset the form because I'm doing AJAX submits. On the official website, it says to reset forms by using the created object:

var validator = $('#someForm').validate();

Problem is, with my generic validator setup, I don't have a reference to the created object. Is there a way I can still retrieve it in my case?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

好倦 2024-12-18 05:57:27

我不确定我是否理解您所说的重置表格的意思。以防万一...

您可以像这样删除验证..

$("form").removeData("validator");
$("form").removeData("unobtrusiveValidation");

I'm not sure I understand what you mean by reset the forms. Just in case...

You can remove validation like this..

$("form").removeData("validator");
$("form").removeData("unobtrusiveValidation");
剩余の解释 2024-12-18 05:57:27

你可以这样做,

function ResetValidations(){
           $("form").removeData("validator");
           $("form").removeData("unobtrusiveValidation");
           $.validator.unobtrusive.parse("form");
    }

You can do like this ,

function ResetValidations(){
           $("form").removeData("validator");
           $("form").removeData("unobtrusiveValidation");
           $.validator.unobtrusive.parse("form");
    }
为人所爱 2024-12-18 05:57:27
var formValidations = [];
$('form').each(function() {
    formValidations.push($(this).validate());
});

然后迭代 formValidations

for(var i in formValidations)
{
    //do something with formValidations[i]
}
var formValidations = [];
$('form').each(function() {
    formValidations.push($(this).validate());
});

Then iterate through formValidations

for(var i in formValidations)
{
    //do something with formValidations[i]
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文