关于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编程起步(第三课)
Feb 27 Javascript
用 Javascript 验证表单(form)中多选框(checkbox)值
Sep 08 Javascript
asp.net HttpHandler实现图片防盗链
Nov 09 Javascript
jquery 跳到顶部和底部动画2句代码简单实现
Jul 18 Javascript
JSON字符串和对象之间的转换详解
May 26 Javascript
jQuery使用中可能被XSS攻击的一些危险环节提醒
May 24 Javascript
需要牢记的JavaScript基础知识
Sep 25 Javascript
微信小程序 实现点击添加移除class
Jun 12 Javascript
jQuery实现点击关注和取消功能
Jul 03 jQuery
JS解决position:sticky的兼容性问题的方法
Oct 17 Javascript
实例教学如何写vue插件
Nov 30 Javascript
聊聊Vue中provide/inject的应用详解
Nov 10 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
从Web查询数据库之PHP与MySQL篇
2009/09/25 PHP
php实现对短信验证码发送次数的限制实例讲解
2021/03/04 PHP
代码精简的可以实现元素圆角的js函数
2007/07/21 Javascript
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
javascript开发随笔二 动态加载js和文件
2011/11/25 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
2015/12/08 Javascript
vue loadmore组件上拉加载更多功能示例代码
2017/07/19 Javascript
详解webpack2+node+react+babel实现热加载(hmr)
2017/08/24 Javascript
laravel5.3 vue 实现收藏夹功能实例详解
2018/01/21 Javascript
r.js来合并压缩css文件的示例
2018/04/26 Javascript
vue.js 图片上传并预览及图片更换功能的实现代码
2018/08/27 Javascript
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
[38:39]完美世界DOTA2联赛循环赛 IO vs GXR BO2第二场 11.04
2020/11/05 DOTA
Python中replace方法实例分析
2014/08/20 Python
python读文件保存到字典,修改字典并写入新文件的实例
2018/04/23 Python
Python 查找字符在字符串中的位置实例
2018/05/02 Python
pandas中的series数据类型详解
2019/07/06 Python
在Python中append以及extend返回None的例子
2019/07/20 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
Python列表倒序输出及其效率详解
2020/03/04 Python
Django User 模块之 AbstractUser 扩展详解
2020/03/11 Python
基于python实现地址和经纬度转换
2020/05/19 Python
Python读取Excel数据并生成图表过程解析
2020/06/18 Python
html5 canvas 使用示例
2010/10/22 HTML / CSS
Ruby如何进行文件操作
2014/07/17 面试题
实习护理工作自我评价
2013/09/25 职场文书
工业自动化专业毕业生推荐信
2013/11/18 职场文书
物业管理计划书
2014/01/10 职场文书
致标枪运动员广播稿
2014/02/06 职场文书
工伤事故赔偿协议书
2014/04/15 职场文书
导游个人求职信
2014/04/25 职场文书
学校爱国卫生月活动总结
2014/06/25 职场文书
群教个人对照检查材料
2014/08/20 职场文书
践行党的群众路线心得体会
2014/11/05 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书