Contact emails
Explainer
Git hub issue: https://github.com/w3c/webcomponents/issues/187
Design doc/Spec
N/A
Tag review: https://github.com/w3ctag/design-reviews/issues/305 (waiting for TAG feedback)
We're going to merge this feature to the HTML specification.
Summary
Form-associated custom elements enable web developers to define and create custom elements which participate in form submission.
Motivation
The current Custom Elements API provides a capability to define and create web developers' own elements, but such custom elements can't be associated to <form>. If we'd like to submit a value in a custom element, we need hacks such as putting a proxy <input type=hidden>. Polymer's <iron-form> contains such hacks. Form-associated custom elements will provide much cleaner way to associate custom elements and <form>.
Web developers will be able to write HTML like:
<form action="..">
<my-control name="..."></my-control>
<input type=submit>
</form>
Risks
Interoperability and Compatibility
Risk is low. This is a new feature, and major browser vendors support this.
Edge: Public support
Firefox: Public support
Safari: Public support
Web / Framework developers: I heard multiple vendors wanted this.
Ergonomics
This feature will be used in tandem with other HTML elements and DOM API.
The implementation will be done only in Blink, and won't be a performance bottleneck.
The API was designed so that Chrome's Autofill feature can support form-associated custom elements.
Activation
Polyfills would be helpful until other browser vendors support this.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes
Is this feature fully tested by web-platform-tests?
Yes. We should be able to test this in WPT.
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/4708990554472448
Requesting approval to ship?
No