web-dev-qa-db-ja.com

jQuery.ajax-手動で入力せずにフォーム内のすべての要素を送信します

JQuery.ajaxを使用して、POSTを使用してフォームを送信しますが、 "data:"部分にすべてを手動で指定する必要はありません。

これは私が欲しくないものです:

data:   "username=" + document.getElementById("username").value + 
    "&email=" + document.getElementById("email").value,

FORMフィールド全体からの値を持つalla要素を含めるだけの方法はありますか?このフォームは動的に生成されるので、時間を大幅に節約できます。

29
Johan

serialize method を使用します。

data :   $("form").serialize()
84
SolutionYogi

http://docs.jquery.com/Ajax/serialize を見てください。

それは次の例になります:

$("#submit").click(function() {
    $.ajax({
        data: $("form").serialize(),
        ...rest
    });
});
9
Dykam

.serialize()メソッドを使用して、jQuery Ajaxでフォームデータ全体を送信します。

data:$('#formID').serialize()

サンプルスクリプトはここから見つけることができます- jQuery Ajaxでフォームデータ全体を送信する方法

1
JoyGuru