jQuery序列化表單 serialize() serializeArray(),jquery序列化表單
1、serialize()方法
描述:序列化表單內容為字串,用於Ajax請求。
格式:var data = $("form").serialize();
2.serializeArray()方法
描述:序列化表單元素(類似'.serialize()'方法)返回JSON資料結構資料。
注意,此方法返回的是JSON對象而非JSON字串。需要使用外掛程式或者<a>第三方庫</a>進行字串化操作。
格式:var jsonData = $("form").serializeArray();
在使用ajax提交表單資料時,以上兩種方法都可以將data參數設定為$("form").serialize()或$("form").serializeArray()。
Demo
<form id="myform"><table><tr><td>姓名:</td><td> <input type="text" name="name" /> </td></tr><tr><td>性別:</td><td><input type="radio" name="sex" value="1"> 男<input type="radio" name="sex" value="0"> 女</td></tr><tr><td>年齡:</td><td><select name="age"><option value="20">20</option><option value="21">21</option><option value="22">22</option></select></td></tr><tr><td colspan="2"><input type="button" id="ajaxBtn" value="提交" /></td></tr></table></form>
$(function() { $("#ajaxBtn").click(function() {var params1 = $("#myform").serialize();var params2 = $("#myform").serializeArray();console.log(params1); //name=zhangsan&sex=1&age=20console.log(params2); //[Object, Object, Object]$.ajax( {type : "POST",url : "RegisterAction.action",data : params1,success : function(msg) {alert("success: " + msg);}}); })})從中可以看出兩種方法的不同
作者:itmyhome
出處:http://blog.csdn.net/itmyhome1990/article/details/41866265