jQuery Form 表單提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的應(yīng)用
一、jQuery Form的其他api
1. formSerialize
將表單序列化成查詢串。這個(gè)方法將返回一個(gè)形如: name1=value1&name2=value2的字符串。
是否可以連環(huán)調(diào)用: 否, 這個(gè)方法返回的是一個(gè)字符串。
例子:
var queryString = $('#myFormId').formSerialize();
// the data could now be submitted using $.get, $.post, $.ajax, etc
$.post('myscript.jsp', queryString);
2. fieldSerialize
將表單里的元素序列化成字符串。當(dāng)你只需要將表單的部分元素序列化時(shí)可以用到這個(gè)方法。 這個(gè)方法將返回一個(gè)形如: name1=value1&name2=value2的字符串。
是否可以連環(huán)調(diào)用: 否, 這個(gè)方法返回的是一個(gè)字符串。
例子:
var queryString = $('#myFormId .specialFields').fieldSerialize();
3. fieldValue
取出所有匹配要求的域的值,以數(shù)組形式返回。 從 0.91 版本開(kāi)始, 這個(gè)方法 始終 返回一個(gè)數(shù)組。 如果沒(méi)有符合條件的域,這個(gè)數(shù)組將會(huì)是個(gè)空數(shù)組,否則它將會(huì)包含至少一個(gè)值。
是否可以連環(huán)調(diào)用: 否, 這個(gè)方法返回的是一個(gè)數(shù)組。
例子:
// get the value of the password input
var value = $('#myFormId :password').fieldValue();
alert('The password is: ' + value[0]);
4. resetForm
通過(guò)調(diào)用表單元素的內(nèi)在的DOM 上的方法把表單重置成最初的狀態(tài)。
是否可以連環(huán)調(diào)用: 是
例子:
$('#myFormId').resetForm();
5. clearForm
清空表單所有元素的值。這個(gè)方法將會(huì)清空所有的文本框,密碼框,文本域里的值,去掉下拉列表所有被選中的項(xiàng),讓所有復(fù)選框和單選框里被選中的項(xiàng)不再選中。
是否可以連環(huán)調(diào)用: 否
$('#myFormId').clearForm();
6. clearFields
清空某個(gè)表單域的值。這個(gè)可以用在只需要清空表單里部分元素的值的情況。
是否可以連環(huán)調(diào)用: 否
$('#myFormId .specialFields').clearFields();
二、測(cè)試的詳細(xì)代碼:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>jQuery Form 表單提交插件-----formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的 應(yīng)用.</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<!-- 引入依賴(lài)的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);
// 組裝的數(shù)據(jù)可以用于 $.get, $.post, $.ajax ...
$.post('demo.jsp', queryString ,function(data){
$('#output1').html("提交成功!歡迎下次再來(lái)!").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的 應(yīng)用. </h3>
<!-- demo1 -->
<form id="myForm" action="demo.jsp" method="post">
名稱(chēng): <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">
名稱(chēng): <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="清除所有表單" /> (提示:發(fā)現(xiàn)單選框以前選中的,也被清除了,跟重置有點(diǎn)區(qū)別?。?lt;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);
%>
三、測(cè)試效果:
1. formSerialize()測(cè)試效果:
空的時(shí)候:

填寫(xiě)英文的時(shí)候:

填寫(xiě)中文的時(shí)候:


2. fieldValue()測(cè)試效果:
空值的時(shí)候:

填寫(xiě)英文的時(shí)候:

填寫(xiě)中文的時(shí)候:

3. resetForm()的測(cè)試效果

重置前:

重置后:

4. clearForm()方法的效果:
清除前效果:

清除后效果:

相關(guān)文章
jQuery實(shí)現(xiàn)網(wǎng)頁(yè)抖動(dòng)的菜單抖動(dòng)效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)網(wǎng)頁(yè)抖動(dòng)的菜單抖動(dòng)效果,鼠標(biāo)滑過(guò)菜單項(xiàng)可見(jiàn)到菜單項(xiàng)的抖動(dòng)效果,涉及jquery鼠標(biāo)事件及頁(yè)面元素樣式動(dòng)態(tài)操作的技巧,需要的朋友可以參考下2015-08-08
jQuery使用EasyUi實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)下拉框效果
本篇文章主要介紹了jQuery使用EasyUi實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)效果,實(shí)例使用EasyUi實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。2017-03-03
input 和 textarea 輸入框最大文字限制的jquery插件
input 和 textarea 輸入框最大文字限制的jquery插件,需要的朋友可以參考下。2011-10-10
jQuery實(shí)現(xiàn)鼠標(biāo)響應(yīng)式淘寶動(dòng)畫(huà)效果示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)鼠標(biāo)響應(yīng)式淘寶動(dòng)畫(huà)效果,涉及jQuery事件響應(yīng)及頁(yè)面元素屬性動(dòng)態(tài)操作相關(guān)使用技巧,需要的朋友可以參考下2018-02-02
有關(guān)于eclipse配置spket需要注意的一些地方
用eclipse開(kāi)發(fā)jquery程序,可以安裝spket插件,這樣在寫(xiě)代碼的時(shí)候,就會(huì)有智能感知.eclipse配置spket的文章網(wǎng)上到處都是,spket官網(wǎng)上也有介紹.但配置后有的人無(wú)論如何也沒(méi)有智能感知提示,我就是其中一個(gè).2013-04-04
jquery中的常見(jiàn)問(wèn)題及快速解決方法小結(jié)
下面小編就為大家?guī)?lái)一篇jquery中的常見(jiàn)問(wèn)題及快速解決方法小結(jié)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-06-06
JSONP 跨域訪問(wèn)代理API-yahooapis實(shí)現(xiàn)代碼
介紹一個(gè)JSONP 跨域訪問(wèn)代理API-yahooapis,需要的朋友可以參考下2012-12-12
Jquery 快速構(gòu)建可拖曳的購(gòu)物車(chē)DragDrop
拖曳功能早已經(jīng)成為各個(gè)網(wǎng)站吸引用戶的一大亮點(diǎn),那有沒(méi)有想過(guò)如何把拖曳功能應(yīng)用到電子商務(wù)網(wǎng)站的購(gòu)物車(chē)功能模塊中呢?2009-11-11
jQuery簡(jiǎn)單驗(yàn)證上傳文件大小及類(lèi)型的方法
這篇文章主要介紹了jQuery簡(jiǎn)單驗(yàn)證上傳文件大小及類(lèi)型的方法,結(jié)合實(shí)例形式分析了jQuery針對(duì)上傳文件的類(lèi)型與大小運(yùn)算操作相關(guān)技巧,需要的朋友可以參考下2016-06-06

