js serializeArray方法

来源:互联网 发布:股票历史分时数据获取 编辑:程序博客网 时间:2024/05/21 04:26

之前只知道serialize方法,感觉很方便。用ajax提交表单的时候,就可以用这个方法来把数据格式化。

后来,因为可能要先把数据处理一下再提交,所以每次把数据提取出来都是一段长代码,今天突然发现了serializeArray这个方法,感觉一切都简单多了。


借用w3school的例子:

<html><head><script type="text/javascript" src="/jquery/jquery.js"></script><script type="text/javascript">$(document).ready(function(){  $("button").click(function(){    x=$("form").serializeArray();    $.each(x, function(i, field){      $("#results").append(field.name + ":" + field.value + " ");    });  });});</script></head><body><form action="">First name: <input type="text" name="FirstName" value="Bill" /><br />Last name: <input type="text" name="LastName" value="Gates" /><br /></form><button>序列化表单值</button><div id="results"></div></body></html>


这里面serializeArray()的方法就会返回一个json值:

[{  name: "FirstName",  value: "Bill"},{  name: "LastName",  value: "Gates"}]

然后就可以用循环的方法处理每个数据。


另外serialize()方法就会返回一个string值:

FirstName=Bill&LastName=Gates


$.param()

方法创建数组或对象的序列化表示。

Java代码  收藏代码
  1. var obj = {a:1,b:2,c:3};  
  2. var k = $.param(obj);  
  3. alert(k);    //输出a=1&b=2&c=3  

0 0