| <!doctype html> |
| <meta charset=utf-8> |
| <title>Document.forms</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id=log></div> |
| <form id="form1"> |
| <input type="button" name="thebutton" value="alpha"> |
| <input type=radio name=r1 value=a> |
| <input type=radio name=r1 value=b> |
| <input type=radio name=r1 value=c> |
| <input type=radio name=r1 value=d> |
| <input type=radio name=r1 value=e> |
| </form> |
| |
| <form id="form2"> |
| <input type="button" name="thebutton" value="alpha"> |
| <input type=radio name=r1 value="a"> |
| <input type=radio name=r1 value="b"> |
| <input type=radio name=r1 value="c"> |
| <input type=radio name=r1 value="d"> |
| <input type=radio name=r1 value="e"> |
| </form> |
| |
| <form id=""></form> |
| <script> |
| test(function() { |
| assert_equals(document.forms.length, 3); |
| assert_equals(document.forms[0].id, "form1"); |
| assert_equals(document.forms[1].id, "form2"); |
| assert_equals(document.forms.form1.id, "form1"); |
| assert_equals(document.forms.form2.id, "form2"); |
| assert_equals(document.forms.item(0).id, "form1"); |
| assert_equals(document.forms.item(1).id, "form2"); |
| assert_equals(document.forms.namedItem("form1").id, "form1"); |
| assert_equals(document.forms.namedItem("form2").id, "form2"); |
| }, "document.forms") |
| |
| test(function() { |
| // The `item` method takes one *numeric* argument. Passing a string to `item` |
| // results in that string getting converted to 0 |
| assert_equals(document.forms.item("form1").id, "form1"); |
| assert_equals(document.forms.item("form2").id, "form1"); |
| }, "document.forms.item with string arg") |
| |
| test(function() { |
| assert_equals(document.forms[""], undefined); |
| assert_equals(document.forms.namedItem(""), null); |
| }, "document.forms with empty string") |
| |
| test(function() { |
| var result = []; |
| for (var p in document.forms) { |
| result.push(p); |
| } |
| assert_array_equals(result, ["0", "1", "2", "item", "namedItem", "length"]) |
| }, "document.forms iteration") |
| |
| test(function() { |
| var result = Object.getOwnPropertyNames(document.forms); |
| assert_array_equals(result, ["0", "1", "2", "form1", "form2"]) |
| }, "document.forms getOwnPropertyNames") |
| </script> |