jQuery ajax - serialize()-metodi

Esimerkki

Tulosta sarastetun lomakkeen arvojen tulostus:

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

Kokeile itse

Määrittely ja käyttö

serialize()-metodi luo URL-koodattu tekstitulostus merkkijonoja sarastamalla lomakkeen arvot.

Voit valita yhden tai useamman lomakkeen elementin (esim. input- tai tekstikenttä) tai itse lomake-elementin.

Serialisoitavat arvot voidaan käyttää URL-kyselymerkkijonona AJAX-pyynnön luonnissa.

syntaksi

$(valitsin).serialize()

Yksityiskohtainen selitys

.serialize() -menetelmä luo vakio URL-merkistöllä koodattua tekstimerkkijonoa. Sen toiminnan kohteena on jQuery-objekti, joka edustaa lomakkeen elementtien kokoelmaa.

Lomakkeen elementteillä on useita tyyppivaihtoehtoja:

<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() -menetelmä voi käsitellä valittuja yksittäisiä lomakkeen elementtejä jQuery-objektina, kuten <input>, <textarea> ja <select>. Valitaan kuitenkin yleensä helpommin <form>-elementti itsessään serialisoitavaksi:

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

Lähetetään vakioinen kyselymerkkijono:

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

Huomautus:Vain ainoastaan”onnistunut elementti”serialisoidaan merkkijonoksi. Jos lomakkeen lähettämistä ei tapahdu painikkeella, arvoa ei serialisoitu. Jos lomakkeen elementin arvo sisällytetään merkkijonoon, elementin on käytettävä name-ominaisuutta.