jquery.validate1.9.0前台验证使用
一、利用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.validate自带的控制错误信息位置的方法——’errorPlacement’,使用也很方便:
- errorPlacement: function(error, element)
- {
- error.appendTo(element.parent());
- }
jquery.validate1.9.0前台验证使用的更多相关文章
- jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- jquery.validate新的写法(jquery.validate1.13.js)
<script src="../js/jquery.js"></script> <script src="../js/jquery.vali ...
- jquery.validate1.13
jquery.validate新的写法(jquery.validate1.13.js) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...
- 【转】jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- [转]jquery.validate.js表单验证
原文地址:https://www.cnblogs.com/si-shaohua/p/3780321.html 一.用前必备官方网站:http://bassistance.de/jquery-plugi ...
- 基于jQuery的Validate表单验证
表单验证可以说在前端开发工作中是无处不在的~ 有数据,有登录,有表单, 都需要前端验证~~ 而我工作中用到最多的就是基于基于jQuery的Validate表单验证~ 就向下面这样~ 因为今天有个朋 ...
- jquery.validation.js 表单验证
jquery.validation.js 表单验证 官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuer ...
- Jquery.validate.js表单验证插件的使用
作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...
- 基于Jquery Validate 的表单验证
基于Jquery Validate 的表单验证 jquery.validate.js是jquery下的一个验证插件,运用此插件我们可以很便捷的对表单元素进行格式验证. 在讲述基于Jquery Vali ...
随机推荐
- Codeforces Round #393 (Div. 2) (8VC Venture Cup 2017 - Final Round Div. 2 Edition) E - Nikita and stack 线段树好题
http://codeforces.com/contest/760/problem/E 题目大意:现在对栈有m个操作,但是顺序是乱的,现在每输入一个操作要求你输出当前的栈顶, 注意,已有操作要按它们的 ...
- 二十二 使用__slots__
正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性.先定义class: class Student(object): pa ...
- Mysql 主键约束PrimaryKey
Mysql 主键约束Primary Key 今天来简单的讲一下主键约束. 假如有一张学生信息表,里面记录了学生的学号 ,姓名,成绩等,那么,会不会有两个学号相同的学生,答案肯定是否定的,如果有的话也只 ...
- Windows环境上装在VM,VM安装CentOS7
1.下载VM并且安装 VM下载地址:https://www.vmware.com/products/workstation-pro.html 来自百度经验的的一个密钥(VMware Workstati ...
- pip安装报错解决
使用pip安装docker-compose时报 unsupported operand type(s) for -=: 'Retry' and 'int' 错误,经过一番google后,发现使用升级s ...
- React篇章-React 组件
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...
- React Native踩坑之Unable to load script from assets
报错: Unable to load script from assets 'index.android.bundle'. Make sure your bundle is packaged corr ...
- python 什么是全局解释器锁GIL
什么是全局解释器锁GIL Python代码的执行由Python 虚拟机(也叫解释器主循环,CPython版本)来控制,Python 在设计之初就考虑到要在解释器的主循环中,同时只有一个线程在执行,即在 ...
- Python协程(中)
协程嵌套 使用async可以定义协程,协程用于耗时的io操作,我们也可以封装更多的io操作过程,这样就实现了嵌套的协程,即一个协程中await了另外一个协程,如此连接起来. import asynci ...
- [BZOJ2431][HAOI2009]逆序对数列(DP)
从小到大加数,根据加入的位置转移,裸的背包DP. #include<cstdio> #include<cstring> #include<algorithm> #d ...