jQuery ajax - serialize() metoden

Eksempel

Udskriv resultatet af den serialiserede formulardata:

$("button").click(function(){
  $("div").text($("form").serialize());
});

Prøv det selv

Definition og brug

serialize() metoden opretter en URL-kodet tekststreng ved at serialisere formulardata.

Du kan vælge en eller flere formularelementer (f.eks. input og/eller tekstfelt), eller form-elementet selv.

序列化的值可在生成 AJAX 請求時用於 URL 查詢字串中。

語法

$(selector).serialize()

詳細說明

.serialize() 方法創建以標準 URL 编碼表示的文本字串。它的操作對象是代表表單元素集合的 jQuery 對象。

表單元素有幾種類型:

<form>
  <div><input type="text" name="a" value="1" id="a" /></div>
  <div><input type="text" name="b" value="2" id="b" /></div>
  <div><input type="hidden" name="c" value="3" id="c" /></div>
  <div>
    <textarea name="d" rows="8" cols="40">4</textarea>
  </div>
  <div><select name="e">
    <option value="5" selected="selected">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
  </select></div>
  <div>
    <input type="checkbox" name="f" value="8" id="f" />
  </div>
  <div>
    <input type="submit" name="g" value="Submit" id="g" />
  </div>
</form>

.serialize() 方法可以操作已選取個別表單元素的 jQuery 對象,比如 <input>, <textarea> 以及 <select>。不過,選擇 <form> 标籤本身進行序列化一般更容易些:

$('form').submit(function() {
  alert($(this).serialize());
  return false;
});

輸出標準的查詢字串:

a=1&b=2&c=3&d=4&e=5

註釋:只會將”成功的控件“序列化為字串。如果不使用按鈕來提交表單,則不對提交按鈕的值序列化。如果要表單元素的值包含到序列字串中,元素必須使用 name 屬性。