jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用


Posted in Javascript onJanuary 23, 2016

一、jQuery Form的其他api

1. formSerialize

将表单序列化成查询串。这个方法将返回一个形如: name1=value1&name2=value2的字符串。
是否可以连环调用: 否, 这个方法返回的是一个字符串。

例子:

var queryString = $('#myFormId').formSerialize(); 
// the data could now be submitted using $.get, $.post, $.ajax, etc 
$.post('myscript.jsp', queryString);

2. fieldSerialize

将表单里的元素序列化成字符串。当你只需要将表单的部分元素序列化时可以用到这个方法。 这个方法将返回一个形如: name1=value1&name2=value2的字符串。
是否可以连环调用: 否, 这个方法返回的是一个字符串。

例子:

var queryString = $('#myFormId .specialFields').fieldSerialize();

3. fieldValue

取出所有匹配要求的域的值,以数组形式返回。 从 0.91 版本开始, 这个方法 始终 返回一个数组。 如果没有符合条件的域,这个数组将会是个空数组,否则它将会包含至少一个值。
是否可以连环调用: 否, 这个方法返回的是一个数组。
例子:

// get the value of the password input 
var value = $('#myFormId :password').fieldValue(); 
alert('The password is: ' + value[0]);

4. resetForm

通过调用表单元素的内在的DOM 上的方法把表单重置成最初的状态。
是否可以连环调用: 是
例子:

$('#myFormId').resetForm();

5. clearForm

清空表单所有元素的值。这个方法将会清空所有的文本框,密码框,文本域里的值,去掉下拉列表所有被选中的项,让所有复选框和单选框里被选中的项不再选中。
是否可以连环调用: 否

$('#myFormId').clearForm();

6. clearFields

清空某个表单域的值。这个可以用在只需要清空表单里部分元素的值的情况。
是否可以连环调用: 否

$('#myFormId .specialFields').clearFields();

二、测试的详细代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>jQuery Form 表单提交插件-----formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的 应用.</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<!-- 引入依赖的js -->
<script src="jquery-1.3.1.js" type="text/javascript"></script>
<script src="jquery.form.js" type="text/javascript"></script>
<script type="text/javascript"> 
$(document).ready(function() { 
$('#test').click(function(){
var queryString = $('#myForm').formSerialize();
alert(queryString);
// 组装的数据可以用于 $.get, $.post, $.ajax ...
$.post('demo.jsp', queryString ,function(data){
$('#output1').html("提交成功!欢迎下次再来!").show(); 
}); 
return false;
})
//demo2
$('#test2').click(function(){
var queryString = $('#myForm2 *').fieldValue(); 
alert(queryString);
return false;
})
//重置表单
$('#test3').click(function(){
$('#myForm').resetForm();
$('#myForm2').resetForm();
})
//清除表单
$('#test4').click(function(){
$('#myForm').clearForm();
$('#myForm2').clearForm();
})
}); 
</script> 
</head>
<body>
<h3> Demo 3 : jQuery Form 表单提交插件-----formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的 应用. </h3>
<!-- demo1 -->
<form id="myForm" action="demo.jsp" method="post"> 
名称: <input type="text" name="name" /> <br/>
地址: <input type="text" name="address" /><br/> 
自我介绍: <textarea name="comment"></textarea> <br/>
<input type="submit" id="test" value="提交" /> <br/>
<div id="output1" style="display:none;"></div>
</form>
<br/><br/><br/>
<!-- demo2 -->
<form id="myForm2" action="demo.jsp" method="post"> 
名称: <input type="text" name="name2" class="special"/> <br/>
地址: <input type="text" name="address2" /><br/> 
自我介绍: <textarea name="comment2" class="special"></textarea> <br/>
单选:男<input type="radio" name="a" value="男" checked/> 
女<input type="radio" name="a" value="女"/><br/>
<input type="submit" id="test2" value="提交" /> <br/>
</form>
<br/><br/><br/>
<input type="button" id="test3" value="重置所有表单" /> <br/>
<input type="button" id="test4" value="清除所有表单" /> (提示:发现单选框以前选中的,也被清除了,跟重置有点区别!)<br/>
</body>
</html>

demo.jsp 代码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");//防止乱码!
String name = request.getParameter("name");
String address = request.getParameter("address");
String comment = request.getParameter("comment");
System.out.println(name + " " +address + " " +comment);
%>

三、测试效果:

1. formSerialize()测试效果:

空的时候:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

填写英文的时候:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

填写中文的时候:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

2. fieldValue()测试效果:

空值的时候:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

填写英文的时候:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

填写中文的时候:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

3. resetForm()的测试效果

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

重置前:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

重置后:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

4. clearForm()方法的效果:

清除前效果:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

清除后效果:

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用

Javascript 相关文章推荐
jQuery EasyUI API 中文文档 - NumberBox数字框
Oct 13 Javascript
js实现class样式的修改、添加及删除的方法
Jan 20 Javascript
如何屏蔽防止别的网站嵌入框架代码
Aug 24 Javascript
jQuery.trim() 函数及trim()用法详解
Oct 26 Javascript
JS中innerHTML和pasteHTML的区别实例分析
Jun 22 Javascript
jQuery实现带延时功能的水平多级菜单效果【附demo源码下载】
Sep 21 Javascript
遍历json 对象的属性并且动态添加属性的实现
Dec 02 Javascript
JavaScript中offsetWidth的bug及解决方法
May 17 Javascript
Angularjs中使用轮播图指令swiper
May 30 Javascript
JavaScript实现简单图片轮播效果
Aug 21 Javascript
探究react-native 源码的图片缓存问题
Aug 24 Javascript
小程序实现可拖动的悬浮按钮
Sep 07 Javascript
jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
Jan 23 #Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
Jan 23 #Javascript
AngularJS中监视Scope变量以及外部调用Scope方法
Jan 23 #Javascript
AngularJS使用ngOption实现下拉列表的实例代码
Jan 23 #Javascript
JavaScript实现ASC转汉字及汉字转ASC的方法
Jan 23 #Javascript
javascript实现全角转半角的方法
Jan 23 #Javascript
jQuery操作Table技巧大汇总
Jan 23 #Javascript
You might like
ThinkPHP关于session的操作方法汇总
2014/07/18 PHP
PHP面向对象程序设计之接口用法
2014/08/20 PHP
PHP实现微信提现功能
2018/09/30 PHP
Moment.js 不容错过的超棒Javascript日期处理类库
2012/04/15 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
Jquery修改页面标题title其它JS失效的解决方法
2014/10/31 Javascript
使用JQuery在线制作ppt并在线演示源码特效
2015/09/08 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
js验证框架之RealyEasy验证详解
2016/06/08 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
用Vue写一个分页器的示例代码
2018/04/22 Javascript
详解vue组件基础
2018/05/04 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
2018/08/08 Javascript
uni-app如何实现增量更新功能
2020/01/03 Javascript
Python的装饰器使用详解
2017/06/26 Python
python修改list中所有元素类型的三种方法
2018/04/09 Python
python 获取字符串MD5值方法
2018/05/29 Python
Python Series从0开始索引的方法
2018/11/06 Python
如何关掉pycharm中的python console(图解)
2019/10/31 Python
tensorflow通过模型文件,使用tensorboard查看其模型图Graph方式
2020/01/23 Python
Python enumerate内置库用法解析
2020/02/24 Python
Pycharm 设置默认解释器路径和编码格式的操作
2021/02/05 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
网页切图的CSS和布局经验与要点
2015/04/09 HTML / CSS
《望洞庭》教学反思
2014/02/16 职场文书
镇党委书记群众路线整改措施思想汇报
2014/10/13 职场文书
护士求职自荐信范文
2015/03/04 职场文书
公积金贷款承诺书
2015/04/30 职场文书
2015年语言文字工作总结
2015/07/23 职场文书
党员公开承诺书2016
2016/03/24 职场文书
干货:我将这样书写我的演讲稿!
2019/05/09 职场文书
2019新员工心得体会
2019/06/25 职场文书
多属性、多分类MySQL模式设计
2021/04/05 MySQL
python百行代码实现汉服圈图片爬取
2021/11/23 Python
SQL Server中搜索特定的对象
2022/05/25 SQL Server