FormDataEvent.formData

formDataFormDataEvent インターフェイスの読み取り専用プロパティで、このイベントが発行された時点のフォームに含まれていたデータを表す FormData オブジェクトが入っています。

構文

formData = formDataEvent.formData

返値

FormData オブジェクト

// フォームの参照を取得

const formElem = document.querySelector('form');

// submit ハンドラー

formElem.addEventListener('submit', (e) => {
  // フォームの送信時、既定の動作を抑止
  e.preventDefault();

  // FormData オブジェクトを構築、これにより formdata イベントが発行
  new FormData(formElem);
});

// データを取得するための formdata ハンドラー

formElem.addEventListener('formdata', (e) => {
  console.log('formdata fired');

  // イベントオブジェクトからのフォームデータの取得
  let data = e.formData;
  for (var value of data.values()) {
    console.log(value);
  }

  // XHR を介してデータを送信
  var request = new XMLHttpRequest();
  request.open("POST", "/formHandler");
  request.send(data);
});

仕様書

Specification
HTML Standard (HTML)
# the-formdataevent-interface:dom-formdataevent-formdata-2

ブラウザーの互換性

BCD tables only load in the browser

関連情報