5

簡単な質問

jquery の.serializeArray();関数を使用してフォームをシリアル化した場合、jquery の ajax を使用してフォームを送信する前に何かをする必要がありますdata:か?

例えば、私は見送ることができますか

[{name: inp1, value: 'val1'}, {name: inp2, value: 'val2'}]そのまま、または何らかの方法で前処理する必要がありますか?

そして、phpではこれをどのように読むのでしょうか?

4

1 に答える 1

32

ここで使うのがいいでしょうserializedataこれにより、フォームの値が AJAX 呼び出しの属性として使用できる単純な文字列に変換されます。

var myData = $('#yourForm').serialize();
// "inp1=val1&inp2=val2"
$.ajax({
    url: "http://example.com",
    data: myData
});

メソッドを使用してこれを PHP に送信すると仮定すると、 およびGETを使用してこれらの値にアクセスできます。$_GET['inp1']$_GET['inp2']


編集: によって作成された配列を、次serializeArrayを使用してパラメーター文字列に変換できます。$.param

var myData = $('#yourForm').serializeArray();
// remove items from myData
$.ajax({
    url: "http://example.com",
    data: $.param(myData) // "inp1=val1&inp2=val2"
});
于 2011-02-01T12:04:43.690 に答える