1. ホーム
  2. javascript

[解決済み] 既存のフォームから作成したFormDataをログに記録すると空のように見える [重複].

2023-04-04 14:18:43

質問

Webフォームからキー(入力名など)と値(入力値)のセットを取得しようとしています。

<body>
  <form>
    <input type="text" name="banana" value="swag">
  </form>

  <script>
    var form = document.querySelector('form');
    var formData = new FormData(form);
  </script>
</body>

によると FormData のドキュメントによると , formData には、フォームからのキーと値が含まれているはずです。しかし console.log(formData)formData が空であることを示します。

FormDataを使ってフォームから素早くデータを取得するにはどうしたらよいでしょうか。

JSFiddle

どのように解決するのですか?

更新 : XHR仕様 に、FormData オブジェクトを検査するための関数がいくつか追加されました。

FireFox は v39.0 以降、より新しい機能をサポートしています。 , Chrome は v50 でサポートされる予定です。 . 他のブラウザーについてはわかりません。

var form = document.querySelector('form');
var formData = new FormData(form);

for (var [key, value] of formData.entries()) { 
  console.log(key, value);
}

//or

console.log(...formData)