一个Web表单通常由表单标签和各种表单元素组成
表单标签
<form name="form_name"
method="post/get" action="url" enctype="value" target="_self">
//省略插入的表单元素
</form>
<form>
标签的属性:
- name:表单的名称,用户可以自己定义表单的名称
method:表单提交方式,表单提交的方式有两种:POST 和 GET
1、POST方式可以没有限制地传递数据到服务器端,所有信息都是在后台传输的,用户在浏览器中看不到这一过程,安全性高。另外POST方式不会将信息附加在URL后,不会显示在地址栏。所以POST方式比较适合发送一些保密或容量较大的数据到服务器。
2、GET方式为表单提交的默认方式。使用GET方式提交表单数据时,数据被附加到URL后,并作为URL的一部分发送到服务器。因此,在浏览器地址栏中能够看到用户提交的信息,在地址栏中会显示“URL?用户传递的参数列表”。
GET方式传递的参数格式如下:
http://url?para1=value1¶2=value2¶3=value3……
其中URL为表单响应的地址(如127.0.0.1/get.php),para1为表单元素的名称,value1为表单元素的值。URL和第一个表单元素名之间用“?”隔开,而多对表单元素名及其值之间用“&”隔开,每对表单元素的格式都以“paran=valuen”形式固定不变。
- action:指定处理该表单页面的URL,通常为具有数据处理能力的Web程序,如后缀为.php,.asp或者.jsp等的动态网页。
- enctype:设置表单内容的编码方式,主要有三种值。设置为”text/plain”会将空格转换为”+”加号,但不对特殊字符编码。设置为”multipart/form-data”将不对字符编码。在使用包含文件上传控件的表单时,必须使用该值。设置为”application/x-www-form-* urlencoded”会在发送前编码所有字符(默认)。
- target:设置返回信息的显示方式,主要有四种值。设置为”_blank”表示在新的窗口中显示;设置为”_parent”表示在父级窗口中显示;设置为”_self”表示在当前窗口中显示;设置为”_top”表示在顶级窗口中显示。
表单元素
一个表单(form)通常包含很多表单元素。常用的表单元素有以下几种标签:输入域标签<input>
、选择域标签<select>
和<option>
、文本域标签<textarea>
等。
输入域标签
<input>
。
常用包括文本框、密码框、按钮、单选按钮和复选按钮等
例如:<input name="element_name" type=" type_name">
参数name是指输入域的名称,参数type是指输入域的类型。在<input type=" ">
标签中一共提供了10种类型的输入域,用户所选择使用的类型由type属性决定。type属性取值有:值 描述 button 定义可点击按钮(多数情况下,用于通过 JavaScript 启动脚本)。 checkbox 定义复选框。 file 定义输入字段和 “浏览”按钮,供文件上传。 hidden 定义隐藏的输入字段。 image 定义图像形式的提交按钮。 password 定义密码字段。该字段中的字符被掩码。 radio 定义单选按钮。 reset 定义重置按钮。重置按钮会清除表单中的所有数据。 submit 定义提交按钮。提交按钮会把表单数据发送到服务器。 text 定义单行的输入字段,用户可在其中输入文本。默认宽度为 20 个字符。 选择域标签
<select>
和<option>
用来建立一个列表或者菜单。
菜单可以节省空间,正常状态下只能看到一个选项,单击右侧的下三角按钮打开菜单才能看到全部的选项,菜单只能选择一项。列表可以显示一定数量的选项,如果超出了这个数量,会自动出现滚动条,浏览者可以通过拖到滚动条来查看各选项。语法格式如下:<select name="select_name" size="int_num" multiple> <option value="value1">选项1</option> <option value="value2">选项2</option> <option value="value3">选项3</option> … </select>
参数name表示选择域的名称;参数size表示列表的行数;参数value表示菜单选项值;参数multiple表示以列表方式显示数据,省略则以菜单方式显示数据。
选择域标签<select>
和<option>
的显示方式如图:
文本域标签
<textarea>
用来制作多行文本框,可以在其中输入多行文本。语法格式如下:<textarea name="textarea_name" cols="20" rows="6" wrap="value"> .............文本内容! </textarea>
参数name表示文本域的名称;rows表示文本域的行数;cols表示文本域的列数(rows和cols都以字符为单位);wrap用于设定文本的换行方式,值为”off”表示不自动换行。值为hard表示自动硬回车换行,换行标记一同被发送到服务器,输出时也会换行。值为soft表示自动软件换行