v147 · origin trial · web api
Autofill event
A new autofill event fires on form controls (<input>, <select>, <textarea>) after the browser completes autofill on them. This lets pages respond to autofill — adjusting dynamic form UI, re-validating fields, or notifying the browser that the form has been updated to fit the filled data.
at a glance
| Event name | autofill |
|---|---|
| Fires on | <input>, <select>, <textarea> — after the browser autofills the element |
| Interface | AutofillEvent (extends Event) |
| Bubbles | Yes |
| Cancelable | No |
| Status in Chrome 147 | Origin trial |
| ChromeStatus | 5137581018841088 — Autofill event |
| Spec | HTML Living Standard — Autofill |
why it exists
Autofill triggers the browser's form-filling mechanism programmatically, but previously pages had no reliable way to detect when the browser had finished autofilling a set of fields. Listening for input or change events on individual fields missed cases where autofill touched multiple fields at once and didn't clearly signal completion. The autofill event fires after the browser has finished filling a control, giving the page a reliable hook to respond — for example, to re-run validation on dynamically generated fields, update dependent UI, or signal to accessibility tools that form state has changed.
example
document.querySelector('form').addEventListener('autofill', (e) => {
// e.target is the autofilled form control
validateField(e.target);
});
// Or on a specific field
document.getElementById('email').addEventListener('autofill', () => {
checkEmailAvailability();
});
Source: HTML spec and chromestatus, May 2026.
browser support
| Browser | Support |
|---|---|
| Chrome 147+ | Origin trial (requires token) |
| Edge 147+ | Origin trial (Chromium) |
| Firefox | No signal |
| Safari | No signal |