SubmitEvent: SubmitEvent() constructor

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.

The SubmitEvent() constructor creates and returns a new SubmitEvent object, which is used to represent a submit event fired at an HTML form.

Syntax

js
new SubmitEvent(type)
new SubmitEvent(type, options)

Parameters

type

A string with the name of the event. It is case-sensitive and browsers always set it to submit.

options Optional

An object that, in addition of the properties defined in Event(), can have the following properties:

submitter Optional

An HTMLElement object that is the submit button that triggered the form submission.

Return value

A SubmitEvent object configured using the given inputs.

Examples

This code snippet locates a form in the current document, and then an HTML <button> within the form with the class submit on it. Next, a new SubmitEvent is created, configured with its submitter set to the identified button (or null if the button wasn't found). Then the event is sent to the form, telling the form that it's been submitted by the button.

js
const form = document.querySelector("form");
const formTrigger = form.querySelector("button.submit");
const submitEvent = new SubmitEvent("submit", { submitter: formTrigger });

form.dispatchEvent(submitEvent);

This is a somewhat contrived example, as you can do nearly all of this much more easily, but this gives you deep control over the process that can be useful.

Specifications

Specification
HTML
# submitevent

Browser compatibility

desktop mobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
SubmitEvent() constructor
Chrome – Full support
Chrome 81 (Release date: 2020-04-07)
footnote Full support
Edge – Full support
Edge 81 (Release date: 2020-04-13)
footnote Full support
Firefox – Full support
Firefox 75 (Release date: 2020-04-07)
footnote Full support
Opera – Full support
Opera 68 (Release date: 2020-04-22)
footnote Full support
Safari – Full support
Safari 15 (Release date: 2021-09-20)
footnote Full support
Chrome Android – Full support
Chrome Android 81 (Release date: 2020-04-07)
footnote Full support
Firefox for Android – Full support
Firefox for Android 79 (Release date: 2020-07-28)
footnote Full support
Opera Android – Full support
Opera Android 58 (Release date: 2020-05-13)
footnote Full support
Safari on iOS – Full support
Safari on iOS 15 (Release date: 2021-09-20)
footnote Full support
Samsung Internet – Full support
Samsung Internet 13 (Release date: 2020-12-02)
footnote Full support
WebView Android – Full support
WebView Android 81 (Release date: 2020-04-07)
footnote Full support
WebView on iOS – Full support
WebView on iOS 15 (Release date: 2021-09-20)
footnote Full support

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support