14.1 表单的基础知识
优质
小牛编辑
129浏览
2023-12-01
在HTML 中,表单是由<form>元素来表示的,而在JavaScript 中,表单对应的则是HTMLForm-Element 类型。HTMLFormElement 继承了HTMLElement,因而与其他HTML 元素具有相同的默认属性。不过,HTMLFormElement 也有它自己下列独有的属性和方法。
- acceptCharset:服务器能够处理的字符集;等价于HTML 中的accept-charset 特性。
- action:接受请求的URL;等价于HTML 中的action 特性。
- elements:表单中所有控件的集合(HTMLCollection)。
- enctype:请求的编码类型;等价于HTML 中的enctype 特性。
- length:表单中控件的数量。
- method:要发送的HTTP 请求类型,通常是"get"或"post";等价于HTML 的method 特性。
- name:表单的名称;等价于HTML 的name 特性。
- reset():将所有表单域重置为默认值。
- submit():提交表单。
- target:用于发送请求和接收响应的窗口名称;等价于HTML 的target 特性。
取得<form>元素引用的方式有好几种。其中最常见的方式就是将它看成与其他元素一样,并为其添加id 特性,然后再像下面这样使用getElementById()方法找到它。
var form = document.getElementById("form1");
其次,通过document.forms 可以取得页面中所有的表单。在这个集合中,可以通过数值索引或name 值来取得特定的表单,如下面的例子所示。
var firstForm = document.forms[0]; //取得页面中的第一个表单 var myForm = document.forms["form2"]; //取得页面中名称为"form2"的表单
另外,在较早的浏览器或者那些支持向后兼容的浏览器中,也会把每个设置了name 特性的表单作为属性保存在document 对象中。例如,通过document.form2 可以访问到名为"form2"的表单。不过,我们不推荐使用这种方式:一是容易出错,二是将来的浏览器可能会不支持。
注意,可以同时为表单指定id 和name 属性,但它们的值不一定相同。