JavaScript/jQueryでフォームデータを取得するにはどうすればいいですか? 質問する

JavaScript/jQueryでフォームデータを取得するにはどうすればいいですか? 質問する

従来の HTML のみの方法で送信された場合と同じように、フォームのデータを取得する簡単な 1 行の方法はありますか?

例えば:

<form>
    <input type="radio" name="foo" value="1" checked="checked" />
    <input type="radio" name="foo" value="0" />
    <input name="bar" value="xxx" />
    <select name="this">
        <option value="hi" selected="selected">Hi</option>
        <option value="ho">Ho</option>
</form>

出力:

{
    "foo": "1",
    "bar": "xxx",
    "this": "hi"
}

このようなものは、テキストエリア、選択、ラジオ ボタン、チェックボックスが (正しく) 含まれていないため、単純すぎます。

$("#form input").each(function () {
    data[theFieldName] = theFieldValue;
});

ベストアンサー1

使用$('form').serializeArray()配列を返します:

[
  {"name":"foo","value":"1"},
  {"name":"bar","value":"xxx"},
  {"name":"this","value":"hi"}
]

他の選択肢は$('form').serialize()文字列を返します:

"foo=1&bar=xxx&this=hi"

を見てみましょうこのjsfiddleデモ

おすすめ記事