11.2 form元素
可用<form>标签来定义一个表单,当一个表单被定义后就可在表单内放置表单标记。表单使用<form>作为开始标签,以</form>结尾。在一个HTML页面中允许有多个表单,以表单的名字(name)和id作为它们之间的区分。表单格式的代码如下:
可以通过设置<form>标签的属性来设定表单,语法如下:
下面对属性进行说明。
1.action
在表单收集到信息之后,需要将收集到的信息传递给服务器,action属性设置处理表单的服务程序。当表单被提交后,表单中的数据就会发送给action的值所指定的程序进行处理。例如:
表示表单的内容提交给网址为www.htmlcss.com的服务器中的“findmessage.asp”页面去处理。如果处理程序和当前的HTML页面在同一个目录下面,还可以使用相对地址,例如:
处理程序的地址除了可以是绝对地址或相对地址外,还可以是其他形式的地址,例如:
“mailto:htmlcss@163.com”是一段链接到E-mail的代码,表示该表单的内容会以电子邮件的形式传递出去。
2.method
method用于设置表单内容向服务器提交时数据的传送方式。method属性有两个可选取值:get和post。
(1)当method="get"时,向服务器传送数据的方式为get方式。在这种方式下,要传送的数据会被附加在URL之后,被显示在浏览器的地址栏中,而且被传送的数据通常不超过255个字符。get是method默认的值,但对数据的保密性差,不安全。例如:
“wd=htmlcss”就是传送的数据。
(2)当method="post"时,向服务器提交数据采用post方式,这种方式传送的数据量没有限制,是以数据流的形式传送表单数据,但速度比较慢。
3.target
target属性主要用来控制表单提交后的结果显示在哪里,规定链接的页面打开方式。在HTML中,根据实际需要,可选新窗口(_blank)、原窗口(_self)、父窗口(_parent)、最外层窗口(_top)4种打开方式。
4.name
name属性可以为表单指定一个名字,name属性的作用主要是区分各个表单,因为在一个页面中可能有多个表单,或者在一个表单处理程序中需要处理多个页面的表单,这个时候表单的名字就很重要了。
定义一个表单属性的例子如下:
该代码表示将名为“myform”的表单以post方式提交给“http://www.htmlcss/message.asp”,同时提交后返回结果的页面将打开一个新窗口进行显示。
表单的属性设置并不会直接对页面产生影响,主要是设置表单的内在属性,而不是表单的显示内容。如果让一个表单有意义,必须要有相应的表单元素。表单元素又被称为表单控件,图11-3所示是一个表单控件的示例。
图11-3 表单控件实例
表11-1所示是一些在表单中用来定义表单控件的表单标签,在下面的内容里将会对这些标签进行讲解。
表11-1 表单标签
续表