jQuery serialize()方法是序列化表单,用于以url编码的方式生成key、value对,比如:key1=value1&key2=value2的形式。

通过该方法我们不需要分别提取form表单中的每个元素的input的值,比如使用ajax提交的数据新增或修改查询。

function postData(){
 var formData=$("form").serialize();//序列化提交的数据
 $.ajax({
  type: "POST",
  url: "/someQuery",
  processData:true,
  data:formData,
  success: function(data){
   $("#result").html("保存成功");
  }
 });
}

语法

$(selector).serialize() 

例子

<!DOCTYPE html>
<html>
<head>
  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
<script>
$(document).ready(function(){
    $("button").click(function(){
        $("div").text($("form").serialize());
    });
});
</script>
</head>
<body>
<form action="">
  名字: <input type="text" name="name" value="张三"><br>
  爱好:<input type="text" name="hobby" value="篮球"><br>
</form>
<button>生成序列化表单值</button>
<div></div>
</body>

</html>
效果

生成的值以url编码的方式显示。

jQuery serialize() 方法