1.通过jquery.validate的submitHandler选项,即当表单通过验证时运行回调函数。在这个回调函数中通过jquery.form来提交表单;

<script type="text/javascript" src="{$site_url}/assets/js/jquery-1.11.1.min.js"></script>
<script src="{$site_url}/js/jquery.validate.js" type="text/javascript"></script>
<script type="text/javascript" src="{$site_url}/js/jquery.form.min.js"></script>
<script>
$(function(){
$("#myform").validate({
focusCleanup:true,focusInvalid:false,
errorClass: "unchecked",
validClass: "checked",
errorElement: "span",
submitHandler: function(form) {
$(form).ajaxSubmit({
type:'post',
url: '__URL__/recharge_handle',
beforeSubmit: showRequest, //提交前处理
success: showResponse, //处理完成
resetForm: null,
dataType: 'json'
});
}
});
});
function showRequest(formData, jqForm, options) {
$("input[name='submit']").attr('disabled',true).css({background:'gray'}).val('提交中...');
}
function showResponse(data, statusText) {
$("input[name='submit']").attr('disabled',false).css({background:'#013CA6'}).val('提交');
//alert(JSON.stringify(data));
}
</script>

2.通过jquery.form的beforeSubmit,即在提交表单前运行的回调函数,这个函数假设返回true,则提交表单,假设返回false,则终止提交表单。
依据jquery.validate插件的valid()方法,就能够通过jquery.form提交表单时来对表单进行验证。

<script>
$(function(){
$('#myform').submit(function(){
$(this).ajaxSubmit({
type:"post",
url:"__URL__/recharge_handle",
beforeSubmit:showRequest,
success:showResponse
});
return false; //此处必须返回false,阻止常规的form提交
});
$('#myform').validate({
focusCleanup:true,focusInvalid:false,
errorClass: "unchecked",
validClass: "checked",
errorElement: "span"
});
});
function showRequest(formData, jqForm, options) {
return $("#myform").valid();
}
function showResponse(data, statusText) {
alert(JSON.stringify(data))
}
</script>

3.通过jquery.validate验证表单的validate方法。这种方法的优点是对表单验证的控制更加自由

<script>
var options={
focusCleanup:true,focusInvalid:false,
errorClass: "unchecked",
validClass: "checked",
errorElement: "span",
errorPlacement:function(error,element){
var s=element.parent().find("span[htmlFor='" + element.attr("id") + "']");
if(s!=null){
s.remove();
}
error.appendTo(element.parent());
},
success: function(label) {
label.removeClass("unchecked").addClass("checked");
},
rules:{
username:{required:true,minlength:3},
email:{
required:true
}
}
};
$(function(){
validator=$('#myform').validate(options);
$("#reset").click(function(){
validator.resetForm();
});
$('#myform').submit(function(){
$(this).ajaxSubmit({
type:"post",
url:"__URL__/recharge_handle",
beforeSubmit:showRequest,
success:showResponse
});
return false; //此处必须返回false,阻止常规的form提交
});
});
function showRequest(formData, jqForm, options) {
return $("#myform").valid();
}
function showResponse(data, statusText) {
alert(JSON.stringify(data));
}
</script>

jquery.validate+jquery.form表单验证提交的更多相关文章

  1. 表单提交学习笔记(二)—使用jquery.validate.js进行表单验证

    一.官网下载地址:http://plugins.jquery.com/validate/ 二.用法 1.在页面上进行引用 <script src="~/scripts/jquery-1 ...

  2. jquery plugin 之 form表单验证插件

    基于h5表单验证系统.扩展了对easyui组件的支持 先上图: 提示样式用到了伪对象的 {content: attr(xxx)}函数方法,实现提示信息能动态切换. 1.关键属性说明: type: 表单 ...

  3. jQuery动态创建form表单并提交到后台(携带一定的数据进行页面跳转)

    今天遇到这么一个需求,携带一个编号一个名字跳转到另一个JSP页面,直接页面跳转(get携带数据)的话不太安全,于是想到到后台转发一下. 第一种:直接以表单提交方式的进行 JS代码: var form ...

  4. jQuery Ajax 确定 form 表单 submit 提交成功

    使用 jQuery 提交表单,可以使用 同步方式(async: false). a.html 是 html 文件,a.php 是服务端文件,把 a.html 中表单的数据提交到 a.php 中,在提交 ...

  5. jQuery Validatede 结合Ajax 表单验证提交

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. jquery.validate.js自定义表单验证

    $(document).ready(function() { //在下列位置输入页面加载的逻辑代码 $("#inputForm").validate({ rules: { seq: ...

  7. form表单验证提交

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 基于Bootstrap+jQuery.validate Form表单验证实践

    基于Bootstrap jQuery.validate Form表单验证实践 项目结构 :     github 上源码地址:https://github.com/starzou/front-end- ...

  9. 使用jquery插件validate制作的表单验证案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. spring--设置注入VS构造注入

    1.在传统的程序设计中,调用亲自创建被调用者的实例,即由程序控制“对象之间的依赖关系”,这种方式的耦合度比较高:控制反转就是将由程序控制的“对象间的依赖关系”转交给Ioc容器来进行控制,被调用者的实例 ...

  2. 你可能还会遇到无法启动mysql的错误

    解决方法如下:

  3. 杭电acm 1049题

    一道水题..... 大意是一条1inch的虫子在一个n inch的盒子的底部,有足够的能够每一分钟往上爬u inch,但是需要休息一分钟,这期间会往下掉d inch,虫子爬到盒子口即认为结束.要求计算 ...

  4. 4、linux-grep awk sed and cuf sort uniq join

    1.grep 1.1 grep [-invc] [--color=auto] '搜寻字符串' filename选项与参数:-i :忽略大小写的不同-n :顺便输出行号-v :显示没有 '搜寻字符串' ...

  5. 【转】ANT安装、环境变量配置及验证

    http://www.cnblogs.com/yuzhongwusan/archive/2013/03/26/2982411.html Posted on 2013-03-26 14:01 yuzho ...

  6. debian系Linux中文系统目录改为英文目录的解决方法

    之前给笔记本装的kali是英文版,系统安装好了后再修改系统语言为中文,或者直接就用英文系统,也是可以的. 后来笔记本的硬盘坏掉了,换ssd,然后安装kali的中文版,中文是方便,但是进去后就不爽了. ...

  7. web.config中authorization下的location中的path的设置 (转)

    项目下 有三个文件夹 A,B,C 验正方式是 Forms 验正 我要设置他们的访问权限为, A,匿名可访问 B,普通用户授权后才能访问 C,只允许管理员访问 <configuration> ...

  8. 浅谈js模块加载方式(初级)

    1.简介:  前端模块化开发日渐鼎盛,如何将零散的插件或者是普通的js脚本文件统一管理及引用,是众多开发者共同的目标.本人是从事.net开发的,最近对前端的一些东西特别的感兴趣,也会尝试的夹杂一点自己 ...

  9. Note: Clay Codes: Moulding MDS Codes to Yield an MSR Code

    Background Erasure Code 纠删码:与纠错码.检错码类似,均为线性分组码,通过编码可以在有限损失的前提下恢复丢失的数据.  假设每个磁盘存储w比特数据,设\(d_0,\cdots ...

  10. Yahoo Progamming Contest 2019D(DP,思维)

    #include<bits/stdc++.h>using namespace std;long long n,v,a,b,c,d,e;int main(){    scanf(" ...