【整理】01. jQuery.Form.js 用法分析
前言:
- 为什么使用JQuery.From.js,因为原生<form>表单没有回调函数,不过可以通过jquery-form.js这个插件来实现回调函数。
- jQuery.form.js是一个form 插件,支持 ajax表单提交 和 ajax文件上传。
- formSerilize() 用于序列化表单中的数据,并将其自动整理成适合AJAX异步请求的URL地址格式。
- clearForm() 清除表单中所有输入值的内容。
- restForm 重置表单中所有的字段内容。即,将所有表单中的字段恢复到页面加载时的默认值。
- 两个主要的 API:ajaxForm(),ajaxSubmit()。
- ajaxForm() 与 ajaxSubmit() 的区别:
- $("#form1").ajaxForm(); 相当于以下两行:
1234
$("#form1".submit)(function(){$("#form1").ajaxSubmit();returnfalse;})也就是说 ajaxFrom()会自动阻止表单提交。而 ajaxSubmit()不会自动阻止表单提交,想阻止表单提交,要自己 return false;
- 如果希望表单提交完成后不跳转,那么一行简单的代码就能够实现,几乎与不使用表单提交是一样的:
123
$("#MailForm").ajaxSubmit(function(message) {alert("表单提交已成功!");}); - 注意:ajaxForm()与 ajaxSubmit() 都可以没有参数或者接受1个参数。该参数既可以是一个回调函数,也可以是一个options对象。该对象功能非常强大,说明如下:
1234567891011
varoptions={url:url,//form 提交数据的地址type:type,//form 提交的方式(method:post/get)target:target,//服务器返回的响应数据显示在元素(Id)号确定beforeSubmit:function(),//提交前执行的回调函数success:function(),//提交成功后执行的回调函数dataType:null,//服务器返回数据类型clearForm:true,//提交成功后是否清空表单中的字段值restForm:true,//提交成功后是否重置表单中的字段值,即恢复到页面加载时的状态timeout:6000//设置请求时间,超过该时间后,自动退出请求,单位(毫秒)。} - 或者,使用 iframe 来防止提交表单时防止页面跳转;
- html
12345
</div> <aid="vip_batch_export_btn"class="easyui-linkbutton"style="width: 70px">导入</a><formid="upForm"enctype="multipart/form-data"target="uploadIframe"style="position: absolute;left: -9999px;"><inputid="upfile"type="file"name="uploadExcel"/></form><iframeid="uploadIframe"src="about:blank"style="display: none;"></iframe> - Javascript
123456789101112131415161718VipCar.importVipList =function(){varoptions = {url:"../vipManager/importVipInfo.do",type:'post',success:function(data){// ...},error:function(xhr,status,msg){// ...}};$("#upForm").ajaxSubmit(options);// 重新添加一下,否则再次上传同名文件可能就不会触发onchange事件.varinput ='<input id="upfile" type="file" name="uploadExcel" onchange="VipCar.importVipList();"/>';$("#upfile").remove();$('#upForm').append(input);};
- 引入js文件,建议 jquery-form.js,紧随 jquery文件之后,之前我中间穿插引入了easyui 导致 ajaxSubmit() 不可用。
【整理】01. jQuery.Form.js 用法分析的更多相关文章
- jquery.form.js用法之清空form的方法
本段代码摘取自jquery.form.js中,由于觉得该方法的使用性非常强,同时也可独立拿出来使用.该段代码言简意赅可以很好的作为学习参考. /** * Clears the form data. T ...
- jquery.form.js详细讲解
现在大家在在表单提交的时候都不流行中间页面做跳转(比如发布成功的提示页面),或者说这样做会降低用户体验.所以一般都是采用ajax来提交,能看到这个页面的朋友,想必对ajax提交表单已经是很熟悉了. 如 ...
- jQuery通过jquery.form.js插件使用AJAX提交Form表单
我简单使用了一下,jQuery Form插件有一下优点: 1.支持提交前验证. 2.支持提交后回调. 3.采用AJAX方式,有很好的用户体验 4.提交方式是灵活.只要指定要提交的form ID即可. ...
- jquery.form.js实现将form提交转为ajax方式提交的使用方法
本文实例讲述了jquery.form.js实现将form提交转为ajax方式提交的方法.分享给大家供大家参考.具体分析如下: 这个框架集合form提交.验证.上传的功能. 这个框架必须和jquery完 ...
- bootstrap3-datepicker and jquery.form.js
bootstrap3-datepicker 和 jquery.form.js 这两个控件又起来都比较简单,就一起介绍了. 先说datepicker. github上的地址是:https://githu ...
- jquery提交form表单插件jquery.form.js
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 使用jquery.form.js提交表单上传文件
方法: 1.formSerilize() 用于序列化表单中的数据,并将其自动整理成适合AJAX异步请求的URL地址格式. 2.clearForm() 清除表单中所有输入值的内容. 3.restF ...
- jquery.form.js+jquery.validation.js实现表单校验和提交
一.jquery引用 主要用到3个js: jquery.js jquery.form.js jquery.validation.js 另外,为了校验结果提示本地化,还需要引入jquery.vali ...
- jquery.form.js ajax提交上传文件
项目中最近有用到表单提交,是带有图片上传的表单录入,需要ajax异步提交,网上找了好多例子都是只能提交上传字段一个信息的,这里整理一下.表单里有普通文本信息字段也有图片上传字段. 1.jsp代码--引 ...
随机推荐
- centos文件权限详解
假设回显信息为 ①-②rws③r-x④r-x ⑤1 ⑥root ⑦root ⑧430540 ⑨Dec 20 18:27 ⑩/usr/sbin/passwd ,现在逐一分析其内容. ①. 首字符-,表 ...
- android设置横竖屏
android:screenOrientation="portrait"
- PHP中常量和变量的区别
1.常量只能赋一次值: 以下是申请常量的两种方法: const THE_VALUE="one"; define("THE_VALUE","one&qu ...
- CSS(3)实现水平垂直居中效果
CSS实现水平垂直居中对齐 在CSS中实现水平居中,会比较简单.常见的,如果想实现inline元素或者inline-block元素水平居中,可以在其父级块级元素上设置text-align: cente ...
- USACO-palsquare 遇到的一个坑
/** ID: njuwz151 TASK: palsquare LANG: C++ */ #include <iostream> #include <cstdio> #inc ...
- 巧用五招提升Discuz!X运行速度
Discuz!X使用的是数据库应用程序,所以,当数据库的大小.帖子的数目.会员的数目,这些因素都会影响到程序的检索速度,尤其是当论坛的影响力大了,这个问题就更为突出了,虽然,康盛对Discuz进行了更 ...
- 手机端 图片的移动缩放旋转兼容touch
//缩放var initialScale = 1;var currentScale = 1;touch.on('#target', 'pinch', function (ev) { currentSc ...
- LinkedList原理及源码解析
简介 LinkedList是一个双向线性链表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer).由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度, ...
- Hibernate错误:Exception in thread "main" org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
报错:Exception in thread "main" org.hibernate.exception.SQLGrammarException: Could not execu ...
- React 实践项目 (一)
React在Github上已经有接近70000的 star 数了,是目前最热门的前端框架.而我学习React也有一段时间了,现在就开始用 React+Redux 进行实战! 项目代码地址:https: ...