ladybird/Tests/LibWeb/Text/input/html-form-controls-collection.html
2025-03-20 11:50:49 +01:00

58 lines
1.8 KiB
HTML

<!DOCTYPE html>
<form>
<input name="one" id="formcontrol" type="button" />
<input name="two" id="formcontrol" type="text" />
</form>
<script src="include.js"></script>
<script>
function printDescription(name) {
println("-------------------");
println(name);
println("-------------------");
}
function dumpInput(name, item) {
printDescription(name);
println(item.constructor.name);
println(item.id);
println(item.type);
}
function dumpRadioNodeList(name, radioNodeList) {
printDescription(name);
println(radioNodeList.constructor.name);
println(radioNodeList.length);
println(radioNodeList[0].type);
println(radioNodeList[1].type);
}
function dumpNoMatch(name, item) {
printDescription(name);
println(item);
}
test(() => {
const form = document.forms[0].elements;
println(form.constructor.name);
println(form.length);
dumpRadioNodeList('form.namedItem("formcontrol")', form.namedItem("formcontrol"))
dumpInput('form.namedItem("one")', form.namedItem("one"));
dumpInput('form.namedItem("two")', form.namedItem("two"));
dumpNoMatch('form.namedItem("nomatch")', form.namedItem("nomatch"));
dumpRadioNodeList('form["formcontrol"]', form["formcontrol"])
dumpInput('form["one"]', form["one"]);
dumpInput('form["two"]', form["two"]);
dumpNoMatch('form["nomatch"]', form["nomatch"]);
dumpRadioNodeList('form.formcontrol', form.formcontrol)
dumpInput('form.one', form.one);
dumpInput('form.two', form.two);
dumpNoMatch('form.nomatch', form.nomatch);
dumpInput('form[0]', form[0]);
dumpInput('form[1]', form[1]);
dumpNoMatch('form[2]', form[2]);
})
</script>