LibWeb: Implement HTMLFormElement.enctype

This commit is contained in:
Shannon Booth 2024-05-26 10:49:03 +12:00 committed by Andreas Kling
parent a8ef84f8c3
commit aeb815cc66
Notes: sideshowbarker 2024-07-16 20:21:48 +09:00
3 changed files with 32 additions and 1 deletions

View file

@ -0,0 +1,5 @@
enctype | application/x-www-form-urlencoded
enctype | text/plain
enctype | application/x-www-form-urlencoded

View file

@ -0,0 +1,18 @@
<form id="testForm"></form>
<script src="../include.js"></script>
<script>
test(() => {
const form = document.getElementById('testForm');
println(`enctype | ${form.enctype}`);
println('');
form.enctype = 'text/plain';
println(`enctype | ${form.enctype}`);
println('');
form.enctype = 'invalid-value';
println(`enctype | ${form.enctype}`);
});
</script>

View file

@ -1,6 +1,14 @@
#import <DOM/HTMLFormControlsCollection.idl>
#import <HTML/HTMLElement.idl>
// https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#attr-fs-enctype
[MissingValueDefault=application/x-www-form-urlencoded, InvalidValueDefault=application/x-www-form-urlencoded]
enum EnctypeAttribute {
"application/x-www-form-urlencoded",
"multipart/form-data",
"text/plain"
};
// https://html.spec.whatwg.org/multipage/semantics.html#htmlformelement
[Exposed=Window, LegacyOverrideBuiltIns, LegacyUnenumerableNamedProperties]
interface HTMLFormElement : HTMLElement {
@ -10,7 +18,7 @@ interface HTMLFormElement : HTMLElement {
[CEReactions, Reflect=accept-charset] attribute DOMString acceptCharset;
[CEReactions] attribute USVString action;
[FIXME, CEReactions] attribute DOMString autocomplete;
[FIXME, CEReactions] attribute DOMString enctype;
[CEReactions, Enumerated=EnctypeAttribute, Reflect] attribute DOMString enctype;
[FIXME, CEReactions] attribute DOMString encoding;
[CEReactions] attribute DOMString method;
[CEReactions, Reflect] attribute DOMString name;