关于jquery.validate1.9.0前台验证的使用介绍


Posted in Javascript onApril 26, 2013

一、利用jquery.form插件提交表单方法使用jquery.validate插件

现象:当提交表单时,即使前台未验证通过,也照常提交表单。

解决办法:

$('#myForm').submit(function(){
    if (!$(this).valid()) return false;//加上此句OK
    $('.error').html('');
    $("#go").prop("disabled",true);
    $(this).ajaxSubmit({
        type:"POST",
        //beforeSubmit: showRequest,
        dataType:'json',
        success: showResponse
    });
    return false;
});

相关说明:

定制提交方式(ajax提交)
如果使用ajax方式提交,那请采用如下两种方式和校验框架结合
1)、使用submitHandler属性配置ajax提交,submithandler:当表单全部校验通过之后会回调配置的代码,此处也就是当校验通过之后调用ajax提交。
2)、使用valid方法,监听form的submit事件,当$('#form').valid()返回true的时候再提交。

通过监听form的submit事件,对form进行ajax提交。示例完整代码如下:

$(document).ready(function(){
    $('#myForm').submit(function(){
        if (!$(this).valid()) return false;
        $('.error').html('');
        $("#go").prop("disabled",true);
        $(this).ajaxSubmit({
            type:"POST",
            //beforeSubmit: showRequest,
            dataType:'json',
            success: showResponse
        });
        return false;
    });
    var validator = $("#myForm").validate({
        rules: {
            username: "required",
            email: {
                required: true,
                email: true
            }
        },
        messages: {
            username: "请输入姓名",
            email: {
                required: "请输入Email地址",
                email: "请输入正确的email地址"
            }
        }
    });
});
function showResponse(jsonData,statusText)
{
    if(statusText=='success')
    {
        $("#go").prop("disabled",false);
        if (jsonData.status == 1)
        {
            $("#return").html(jsonData.message);
        }
        else
        {
            $.each(jsonData.errors, function(k,v){
                //$('#output').find('ul').append('<li>' + v + '</li>');
                $('.e_' + k).html(v);
            });
        }
    }
}

二、控制错误信息位置的方法
现象一:

我在注册表单新加了一个验证码。验证结果错误时,这个错误信息跑到验证码前面去了。如下图所示:

关于jquery.validate1.9.0前台验证的使用介绍

目的:让错误信息在验证码后面

现象二:

关于jquery.validate1.9.0前台验证的使用介绍

上图中的红色提示内容,我想移到 (* 必填) 的后面。

上面两个现象,可通过jquery.validate自带的控制错误信息位置的方法——'errorPlacement',使用也很方便:

errorPlacement: function(error, element)
{
    error.appendTo(element.parent());
}
Javascript 相关文章推荐
使javascript也能包含文件
Oct 26 Javascript
30个精美的jQuery幻灯片效果插件和教程
Aug 23 Javascript
利用JQuery动画制作滑动菜单项效果实现步骤及代码
Feb 07 Javascript
js页面跳转的常用方法整理
Oct 18 Javascript
基于JQuery实现的跑马灯效果(文字无缝向上翻动)
Dec 02 Javascript
bootstrap daterangepicker双日历时间段选择控件详解
Jun 15 Javascript
JS实现的视频弹幕效果示例
Aug 17 Javascript
深入浅析javascript函数中with
Oct 28 Javascript
原生JS实现手动轮播图效果实例代码
Nov 22 Javascript
vue中axios实现数据交互与跨域问题
May 12 Javascript
Javascript和jquery在selenium的使用过程
Oct 31 jQuery
vue项目里面引用svg文件并给svg里面的元素赋值
Aug 17 Javascript
jQuery.Validate验证库的使用介绍
Apr 26 #Javascript
基于jQuery.Validate验证库知识点的详解
Apr 26 #Javascript
关于jQuery新的事件绑定机制on()的使用技巧
Apr 26 #Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
Apr 25 #Javascript
JS保留小数点(四舍五入、四舍六入)实现思路及实例
Apr 25 #Javascript
JQuery为textarea添加maxlength属性并且兼容IE
Apr 25 #Javascript
同时使用n个window onload加载实例介绍
Apr 25 #Javascript
You might like
用PHP读注册表
2006/10/09 PHP
第二节--PHP5 的对象模型
2006/11/16 PHP
PHP 基于文件头的文件类型验证类函数
2012/05/01 PHP
thinkphp5修改view到根目录实例方法
2019/07/02 PHP
splice slice区别
2006/10/09 Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
ASP.NET jQuery 实例3 (在TextBox里面阻止复制、剪切和粘贴事件)
2012/01/13 Javascript
js读取csv文件并使用json显示出来
2015/01/09 Javascript
javascript文本模板用法实例
2015/07/31 Javascript
用户代理字符串userAgent可实现的四个识别
2015/09/20 Javascript
基于jQuery实现返回顶部实例代码
2016/01/01 Javascript
javascript的几种继承方法介绍
2016/03/22 Javascript
浅析JavaScript中命名空间namespace模式
2016/06/22 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
Bootstrap基本组件学习笔记之面板(14)
2016/12/08 Javascript
基于JavaScript实现复选框的全选和取消全选
2017/02/09 Javascript
Js实现京东无延迟菜单效果实例(demo)
2017/06/02 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
Vux+Axios拦截器增加loading的问题及实现方法
2018/11/08 Javascript
layui数据表格跨行自动合并的例子
2019/09/02 Javascript
jQuery操作元素的内容和样式完整实例分析
2020/01/10 jQuery
python中is与双等于号“==”的区别示例详解
2017/11/21 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
2019/01/11 Python
初次部署django+gunicorn+nginx的方法步骤
2019/09/11 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
python用tkinter实现一个简易能进行随机点名的界面
2020/09/27 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
2020/11/22 Python
旧时光糖果:Old Time Candy
2018/02/05 全球购物
亮化工程实施方案
2014/03/17 职场文书
2015年元旦文艺汇演主持词
2014/03/26 职场文书
优秀团队申报材料
2014/12/26 职场文书
护士年终考核评语
2014/12/31 职场文书
2015年党员个人自我评价
2015/03/03 职场文书
2015年教师节新闻稿
2015/07/17 职场文书
中学政教处工作总结
2015/08/13 职场文书