关于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 相关文章推荐
jquery ajax提交表单数据的两种方式
Nov 24 Javascript
Js 时间间隔计算的函数(间隔天数)
Nov 15 Javascript
js获取时间精确到秒(年月日)
Mar 16 Javascript
jQuery基于扩展实现的倒计时效果
May 14 Javascript
JS 实现导航菜单中的二级下拉菜单的几种方式
Oct 31 Javascript
Bootstrap modal使用及点击外部不消失的解决方法
Dec 13 Javascript
JS中如何实现复选框全选功能
Dec 19 Javascript
利用BootStrap的Carousel.js实现轮播图动画效果
Dec 21 Javascript
layer.confirm取消按钮绑定事件的方法
Aug 17 Javascript
vscode中eslint插件的配置(prettier配置无效)
Sep 10 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 Javascript
JS实现电脑虚拟键盘打字测试
Jun 24 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跨时区(UTC时间)应用解决方案
2013/01/11 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
2014/06/25 PHP
PHP网站常见安全漏洞,及相应防范措施总结
2021/03/01 PHP
Prototype Selector对象学习
2009/07/23 Javascript
为JS扩展Array.prototype.indexOf引发的问题探讨及解决
2013/04/24 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
jquery京东商城双11焦点图多图广告特效代码分享
2015/09/06 Javascript
JS简单实现无缝滚动效果实例
2016/08/24 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
JavaScript之排序函数_动力节点Java学院整理
2017/06/30 Javascript
小程序实现列表删除功能
2018/10/30 Javascript
Webpack按需加载打包chunk命名的方法
2019/09/22 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
在antd中setFieldsValue和defaultVal的用法
2020/10/29 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
JS实现选项卡插件的两种写法(jQuery和class)
2020/12/30 jQuery
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
浅析python 中__name__ = '__main__' 的作用
2014/07/05 Python
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
python采集百度百科的方法
2015/06/05 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
Python实现读取并保存文件的类
2017/05/11 Python
django进阶之cookie和session的使用示例
2018/08/17 Python
python random从集合中随机选择元素的方法
2019/01/23 Python
Python读取Pickle文件信息并计算与当前时间间隔的方法分析
2019/01/30 Python
python3.6根据m3u8下载mp4视频
2019/06/17 Python
python和js交互调用的方法
2020/06/23 Python
美国老牌主机服务商:iPage
2016/07/22 全球购物
Gweniss格温妮丝女包官网:英国纯手工制造潮流包包品牌
2018/02/07 全球购物
牧马人澳大利亚官网:Wrangler澳大利亚
2019/10/08 全球购物
业务主管岗位职责
2013/11/20 职场文书
市场营销个人求职信范文
2014/02/02 职场文书
模范家庭事迹材料
2014/02/10 职场文书
教师党的群众路线学习心得体会
2014/11/04 职场文书
2015年元旦标语大全
2014/12/09 职场文书
展览会邀请函
2015/02/02 职场文书