当前位置:  开发笔记 > 编程语言 > 正文

JQuery.Validate插件可以阻止提交Ajax表单

如何解决《JQuery.Validate插件可以阻止提交Ajax表单》经验,为你挑选了1个好方法。

我正在使用JQuery表单插件(http://malsup.com/jquery/form/)来处理表单的ajax提交.我也插入了JQuery.Validate(http://docs.jquery.com/Plugins/Validation)进行客户端验证.

我所看到的是,当我预期验证时,验证失败,但它不会阻止表单提交.当我使用传统形式(即非ajax)时,验证失败阻止了提交表单....这是我想要的行为.

我知道验证是正确连接的,因为在ajax提交发生后仍然会出现验证消息.

那么我错过了什么是阻止了我想要的行为?以下示例代码....

Lance McNear.. 15

在初始化ajaxForm()时,您需要添加一个回调函数以与beforeSubmit事件一起使用:

var options = {
        beforeSubmit: function() {
            return $('#searchForm').validate().form();
        },
        target: '#detailsView'
    };

现在它知道在提交页面之前检查验证结果.



1> Lance McNear..:

在初始化ajaxForm()时,您需要添加一个回调函数以与beforeSubmit事件一起使用:

var options = {
        beforeSubmit: function() {
            return $('#searchForm').validate().form();
        },
        target: '#detailsView'
    };

现在它知道在提交页面之前检查验证结果.


+1,很好的答案.它真的帮助了我.我没有使用表单插件,但是,正如其他人所知,如果使用$ .ajax({...})方法手动将表单与ajax绑定,则可以执行相同的操作.唯一的区别是,不是'beforeSubmit'而是'beforeSend'.再次,谢谢.
推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有