每个表单元素都有name属性,如果要将表单提交给服务器端程序,必须在相应的HTML标记中设置这一属性。在JavaScript中我们对表单的提交不感兴趣,但是仍然有设置name属性的原因。
不仅表单元素有name属性,表单<form>本身也有name属性,不过与表单提交无关,它的存在只是为了方便JavaScript程序的设计者。如果在<form>标记上定义了name属性,它除了会作为Document对象的数组forms[ ]的元素被存储外,还会作为Documentt对象的一个属性存储,属性名即为name的值。例如:
<form name="everything">
这使得我们可以使用
document.everything表达式来引用那个表单,这比document.forms[0]要方便得多,而且即使文档重排,表单顺序出现了改变,这种表示法也不会出错。
document.address.zipcode 引用“address”表单中的“zipcode”元素,比起document.forms[i].elements[j]表示法要好得多。
为了使HTML表单中的一组Radio元素表现出互斥行为,它们必须具有相同的name属性值。这对于Checkbox元素也同样适用。