jQuery,Ajax 表单插件

学习要点:

  1.核心方法

  2.option 参数

  3.工具方法

传统的表单提交,需要多次跳转页面,极大的消耗资源也缺乏良好的用户体验。而这款 form.js 表单的 Ajax 提交插件将解决这个问题。

一.核心方法

官方网站:http://malsup.com/jquery/form/

form.js 插件有两个核心方法:ajaxForm()和 ajaxSubmit(),它们集合了从控制表单元素 到决定如何管理提交进行的功能。

ajaxForm()方法,传统方式提交,在form元素上使用

传统方式提交,也就是采用的<input type="submit" value="提交" />

注意:使用 ajaxForm()方法,会直接实现 ajax 提交。自动阻止了默认行为不会跳转页面,而它提交的 默认页面是 form 控件的 action 属性的值。提交的方式是 method 属性的值。

    $('#reg').ajaxForm(function () {  //success : fucntion () {}就是这里的function
alert('提交');
});

ajaxSubmit()方法,表单不是传统方式提交,使用了js的 Submit()方法,提交

    $('#reg').submit(function () {     //不会阻止默认行为,会跳转
$(this).ajaxSubmit(function () {
alert('提交');
});
return false; //阻止默认行为
});

注意:ajaxForm()方法,是针对 form 直接提交的,所以阻止了默认行为。而 ajaxSubmit() 方法,由于是针对 submit()方法的,所以需要手动阻止默认行为。而使用了 validate.js 验证 插件,那么 ajaxSubmit()比较适合我们。

二.option 参数

option 参数是一个以键值对传递的对象,可以通过这个对象,设置各种 Ajax 提交的功 能。

    $('#reg').submit(function () {      //不会阻止默认行为,会跳转
$(this).ajaxSubmit({
url: 'test.php', //设置提交的 url,可覆盖 action 属性
target: '#box', //服务器返回的内容存放在#box 里
type: 'POST', //GET,POST
dataType: null, //xml,json,script,默认为 null
clearForm: true, //成功提交后,清空表单
resetForm: true, //成功提交后,重置表单
data: { //增加额外的数据提交
aaa: 'bbb',
ccc: 'ddd'
},
beforeSubmit: function (formData, jqForm, options) { //提交前的验证
alert(formData[0].name); //得到传递表单元素的 name
alert(formData[0].value); //得到传递表单元素的 value
alert(jqForm); //得到 form 的 jquery 对象
alert(options); //得到目前 options 设置的属性
alert('正在提交中!!!');
return true;
},
success: function (responseText, statusText) { //提交成功后的操作
alert(responseText + statusText); //成功后回调
},
error: function (event, errorText, errorType) { //错误时调用 //提交失败的操作
alert(errorText + errorType);
}
});
return false; //阻止默认行为
});

三.工具方法

form.js 除了提供两个核心方法之外,还提供了一些常用的工具方法。这些方法主要是 在提交前或后对数据或表单进行处理的。

formSerialize()表单序列化,内置了的,这里还是需要了解一下

//表单序列化
alert($('#reg').formSerialize());

fieldSerialize()序列化某一个字段

//序列化某一个字段
alert($('#reg #user').fieldSerialize());

fieldValue()得到某个字段的 value 值

//得到某个字段的 value 值
alert($('#reg #user').fieldValue());

resetForm()重置表单

//重置表单
$('#reg').resetForm()

clearFields()清空某个字段

//清空某个字段
$('#reg #user').clearFields();

第一百八十五节,jQuery,Ajax 表单插件的更多相关文章

  1. 第一百六十八节,jQuery,表单选择器

    jQuery,表单选择器 学习要点: 1.常规选择器 2.表单选择器 3.表单过滤器 表单作为 HTML 中一种特殊的元素,操作方法较为多样性和特殊性,开发者不但可以 使用之前的常规选择器或过滤器,也 ...

  2. 第三百八十五节,Django+Xadmin打造上线标准的在线教育平台—登录功能实现,回填数据以及错误提示html

    第三百八十五节,Django+Xadmin打造上线标准的在线教育平台—登录功能实现 1,配置登录路由 from django.conf.urls import url, include # 导入dja ...

  3. 第一百八十六节,jQuery,验证表单插件,Ajax 表单插件,验证和提交表单

    jQuery,验证表单插件,Ajax 表单插件,验证和提交表单 HTML <form id="reg" method="post" action=&quo ...

  4. 第一百六十五节,jQuery,过滤选择器

    jQuery,过滤选择器 学习要点: 1.基本过滤器 2.内容过滤器 3.可见性过滤器 4.子元素过滤器 5.其他方法 过滤选择器简称:过滤器.它其实也是一种选择器,而这种选择器类似与 CSS3 (h ...

  5. 第一百八十八节,jQuery,选项卡 UI

    jQueryUI,选项卡 UI 学习要点: 1.使用 tabs 2.修改 tabs 样式 3.tabs()方法的属性 4.tabs()方法的事件 5.tabs 中使用 on 选项卡(tab),是一种能 ...

  6. 第一百八十四节,jQuery-UI,验证注册表单

    jQuery-UI,验证注册表单 html <form id="reg" action="123.html" title="会员注册" ...

  7. 第二百三十四节,Bootstrap表单和图片

    Bootstrap表单和图片 学习要点: 1.表单 2.图片 本节课我们主要学习一下 Bootstrap 表单和图片功能,通过内置的 CSS 定义,显示各 种丰富的效果. 一.表单 Bootstrap ...

  8. 第一百七十五节,jQuery,工具函数

    jQuery,工具函数 学习要点: 1.字符串操作 2.数组和对象操作 3.测试操作 4.URL 操作 5.浏览器检测 6.其他操作 工具函数是指直接依附于 jQuery 对象,针对 jQuery 对 ...

  9. 第一百二十五节,JavaScript,XML

    JavaScript,XML 学习要点: 1.IE中的XML 2.DOM2中的XML 3.跨浏览器处理XML 随着互联网的发展,Web应用程序的丰富,开发人员越来越希望能够使用客户端来操作XML技术. ...

随机推荐

  1. Error (10663): Verilog HDL Port Connection error at led_demo.v(6): output or inout port "led" must be connected to a structural net expression

    错误现象:

  2. Vmware+Virtualbox+Ubuntu+debian+USB转串口+kermit

    当前的环境是:在Win7笔记本主机上安装VirtualBox+Ubuntu12_04,串口使用USB转串口 如果使用的虚拟机是VirtualBox: 如果使用的虚拟机是Vmware: 执行这步后,主机 ...

  3. PostgreSQL配置文件--WAL

    3 WAL WRITE AHEAD LOG 3.1 Settings 3.1.1 fsync 字符串 默认: fsync = on 开启后强制把数据同步更新到磁盘,可以保证数据库将在OS或者硬件崩溃的 ...

  4. Discuz! 7.1 & 7.2 远程代码执行漏洞

    受影响产品: Discuz! 7.1 & 7.2 漏洞描述: 产生漏洞的$scriptlang数组在安装插件后已经初始化 Discuz!新版本7.1与7.2版本中的showmessage函数中 ...

  5. Fillrate

    http://xionggf.com/articles/graphic/misc/mobile_gpu_term.html IMR Immediate Mode Rendering 立即渲染模式 TB ...

  6. zClip使用时ZeroClipboard生成的位置不对的问题

    zclip官网:http://steamdev.com/zclip 我之前在另外一篇博文里面写了一个解决生成的位置不对的问题,请参考:http://www.cnblogs.com/longshiyVi ...

  7. Linux命令未找到(command not found),误删Linux path原始路径

    1.执行:/bin/vim /etc/profile (打开并编辑profile将Path修改正确,然后保存退出) 2.执行:export PATH=/usr/bin:/usr/sbin:/bin:/ ...

  8. [TypeScript] Dynamically Allocate Function Types with Conditional Types in TypeScript

    Conditional types take generics one step further and allow you to test for a specific condition, bas ...

  9. java 发送html邮件,苹果或者某些邮件客户端收到的内容为空白解决方案

    需要把网页标签中的双引号替换为  "  或者  \\\" 例如 <div id=\\\"container\\\" style=\\\"widt ...

  10. js map、filter、forEach

    1.map方法 <!DOCTYPE html> <html lang="zh"> <head> <meta charset="U ...