1. 開発者向けのウェブ技術
  2. Web API
  3. FormDataEvent

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

FormDataEvent

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2021年9月以降、すべてのブラウザーで利用可能です。

FormDataEvent インターフェイスは formdata イベントを表します。 — このようなイベントは HTMLFormElement オブジェクトで、フォームデータを表すエントリーリストが構築された後に発行されます。これはフォームが送信されようとするときに発行されますが、 FormData() コンストラクターの呼び出しでも発行させることができます。

これにより、 XMLHttpRequest などのメソッドでフォームデータを送信する際に、自分で用意しなくても、 formdata イベントの発行に応じて、 FormData オブジェクトをすばやく取得することができます(FormData オブジェクトの使い方を参照)。

Event FormDataEvent

コンストラクター

FormDataEvent()

新しい FormDataEvent オブジェクトインスタンスを生成します。

インスタンスプロパティ

親インターフェイスである Event から継承したプロパティがあります。

FormDataEvent.formData

イベントが発行された時点のフォーム内に含まれるデータを表す FormData オブジェクトです。

インスタンスメソッド

親インターフェイスである Event から継承したメソッドがあります。

js
// フォームの参照を得る
const formElem = document.querySelector("form");
// submit ハンドラー
formElem.addEventListener("submit", (e) => {
 // フォーム送信時に、既定の動作を抑止
 e.preventDefault();
 console.log(form.querySelector('input[name="field1"]')); // FOO
 console.log(form.querySelector('input[name="field2"]')); // BAR
 // FormData オブジェクトを構築し、 formdata イベントを発行させる
 const formData = new FormData(formElem);
 // フォームデータが formdata イベントによって変更される
 console.log(formData.get("field1")); // foo
 console.log(formData.get("field2")); // bar
});
// データを受け取るための formdata ハンドラー
formElem.addEventListener("formdata", (e) => {
 console.log("formdata fired");
 // フォームデータを変更
 const formData = e.formData;
 formData.set("field1", formData.get("field1").toLowerCase());
 formData.set("field2", formData.get("field2").toLowerCase());
});

仕様書

仕様書
HTML
# the-formdataevent-interface

ブラウザーの互換性

関連情報

MDN の改良に協力

協力方法を知る

このページは MDN の貢献者によって に最終更新されました。

AltStyle によって変換されたページ (->オリジナル) /