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. 数据实时分析平台 Heron

    Twitter发布了新开发的数据实时分析平台Heron,以下为官方文档摘译: 我们每天在Twitter上处理着数十亿的事件.正如你猜测的那样,实时分析这些事件是一个巨大的挑战.目前,我们主要的分析平台 ...

  2. Malware

    电脑病毒的一种, 中文名为“马威尔”, 有多种病毒变种. 1概述 Malware这个单词来自于Malicious和Software两个单词的合成,是恶意软件的专业术语,专指那些泛滥于网络中的恶意代码. ...

  3. Python数据整合与数据准备-BigGorilla实例应用

    参考文档:http://www.biggorilla.org/walkt/ 一.BigGorilla应用主要步骤 如下图: 二.实例应用 1.数据获取 urllib是非常受欢迎的用于在网络上读取数据的 ...

  4. POJ 2386 Lake Counting 搜索题解

    简单的深度搜索就能够了,看见有人说什么使用并查集,那简直是大算法小用了. 由于能够深搜而不用回溯.故此效率就是O(N*M)了. 技巧就是添加一个标志P,每次搜索到池塘,即有W字母,那么就觉得搜索到一个 ...

  5. 【Hadoop】HDFS源码解读

    1.open流程 2.get DFS流程: 3.获取block信息流程

  6. nginx 配置优化详解

    # nginx不同于apache服务器,当进行了大量优化设置后会魔术般的明显性能提升效果 # nginx在安装完成后,大部分参数就已经是最优化了,我们需要管理的东西并不多 #user nobody; ...

  7. Excel中如何将时间戳转为时间?

    Unix时间戳转换Excel时间? Excel中如何将时间戳转为时间? Excel默认不支持Unix格式时间戳,这在导入数据时十分不便.可以用以下公式将时间戳转换成Excel格式的时间: =(x+8* ...

  8. hdu 1348 Wall (凸包模板)

    /* 题意: 求得n个点的凸包.然后求与凸包相距l的外圈的周长. 答案为n点的凸包周长加上半径为L的圆的周长 */ # include <stdio.h> # include <ma ...

  9. libevent2源码分析之三:信号的初始化流程

    libevent2对信号的响应也进行了封装,使之与socket操作一样对外提供统一的接口.这里的信号一般指linux的信号.由于信号与socket相关的编程接口有较大的不同,因此在内部实现也有一些区别 ...

  10. 在ASP.NET MVC中支持 HttpHandler

    写HttpHandler与ASP.NET WebForm基本没有什么不同.只是部署的时候需要注意,只在Web.config中注册还不行,需要在Global.asax.cs添加一条ignore规则: p ...