JavaScript第十四章

JavaScript 初的一个应用,就是分担服务器处理表单的责任,打破处处依赖服务器的局面。尽 管目前的 Web 和 JavaScript已经有了长足的发展,但 Web 表单的变化并不明显。由于 Web 表单 没有为许多常见任务提供现成的解决手段,很多开发人员不仅会在验证表单时使用 JavaScirpt,而且还 增强了一些标准表单控件的默认行为

1 表单的基础知识

在 HTML 中,表单是由

元素来表示的,而在 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 特性。

取得元素引用的方式有好几种。其中常见的方式就是将它看成与其他元素一样,并为其 添加 id 特性,然后再像下面这样使用 getElementById()方法找到它。

var form = document.getElementById("form1");

其次,通过 document.forms 可以取得页面中所有的表单。在这个集合中,可以通过数值索引或 name值来取得特定的表单,如下面的例子所示。

var firstForm = document.forms[0]; //取得页面中的第一个表单

var myForm = document.forms["form2"]; //取得页面中名称为"form2"的表单

1.1 提额交表单

用户单击提交按钮或图像按钮时,就会提交表单。使用