HTML表单

一、表单

    表单元素为,表单中可以包含多项表单元素(又称输入域),表单元素之间不能进行嵌套。为了将信息正确提交到服务器端,一般需要设置表单的action属性与method属性,另外,表单也支持target属性,其用法与超链接中的target属性相同。

1.action属性

    action属性用于设置表单的提交地址,可以为绝对地址或相对地址,一般应填写特定Web应用程序的地址。表单提交后会跳转到此地址(注意:单击超链接也能进行页面跳转,但是无法提交表单元素的数据)。

2.method属性

    method属性用于设置表单中数据的提交方法,值为get或post,默认为get。get与post提交方法的区别如下:

①如果提交方法为get,浏览器会使用“URL重写”的方式向服务器提交表单中的数据(所谓URL重写,指在页面地址后附加以“?”开头的键值对格式的字符串,如向页面a.html传递两个参数a和b,值分别为3和5,URL重写后的地址是“a.html?a=3&b=5”),因为页面地址的长度会受到浏览器和服务器的限制,所以get方法不适用于提交大量的数据,比如用户撰写的博客、上传的文件等;而post方法不改写提交网页的地址,提交数据量不受浏览器的限制。

②为get方法是通过url重写提交数据的,一般浏览器会将重写过的网页地址(即包含提交数据的地址)显示在地址栏中,故不适合提交安全敏感的数据内容(比如用户登录表单一般要求用户输入密码,如果采用get方法提交,用户输入的密码会显示在浏览器地址栏中,很不安全);而浏览器一般不会在地址栏中显示post方法提交的数据,故相对安全性较高。

二、表单中的输入域

    HTML语言支持多种输入域,常见的有单行输入框、密码输入框、单选按钮、复选框等。输入域必须放置在表单元素内其值才会随表单一同提交,所有的输入域都具有name属性,为输入域命名,服务器端程序通过name值获取输入域中包含的数据。HTML语言并没有为每种输入域都指定不同的元素,大部分输入域均使用元素,通过type属性进行区分。

1.提交按钮

提交按钮的type属性为submit,通过value属性指定按钮上的文字。表单需要有提交按钮才能提交表单中的数据。当表单被提交时,页面也会进行跳转。

2.单行输入框

单行输入框的type属性为text,用于输入单行文本,其常用属性如下。

value:输入框的默认值。

maxlength:最多可以输入的文字长度(单个中英文字符的长度都按1计算)。

size:输入框的宽度,单位为输入框当前字体的宽度。

readOnly:设置输入框的内容是否可以被编辑。

disabled:设置输入框是否可用,如果存在disabled属性,输入框变为不可用状态,输入框的值不可编辑,并且提交表单时该输入框的值不会提交给服务器。

3.密码框

密码框的type属性为password,用于输入密码,浏览器不会显示用户输入的内容。密码框的主要属性与单行输入框相同。

4.复选框

复选框的type属性为checkbox,用于改变项目的选择状态,其常用属性如下:

value:复选框被选中后提交给服务器的值,浏览者无法修改此值。

checked:复选框是否被选中(注意:此属性比较特殊,无论赋什么值默认均为选中状态,故一般不给此属性赋值;复选框中不包含此属性则默认为未选中状态)

5.单选按钮

单选按钮的type属性为radio,用于在一组项目中选择其中一个,其常用属性与复选框相同,需要注意的是,单选按钮依靠name属性进行分组,同一组单选按钮(即name属性值相同的单选按钮)中只能有一个单选按钮被选中。

6.普通按钮

普通按钮的type属性为button,默认无任何功能,需要配合Java Script编程指定其行为。

7.复位按钮

复位按钮的type属性为reset,用于将表单中所有输入域还原为默认值。

8.图片按钮

图片按钮的type属性为image,作用与提交按钮相同,可以通过src属性指定图片作为按钮。

9.文件上传域

文件上传域的type属性为file,用于将客户端的文件上传到服务器端。

10.隐藏域

隐藏域的type属性为hidden,隐藏域的用法与单行输入框类似,但隐藏域不在页面中显示,用于为服务器传递额外的信息。

11.下拉列表框与列表框

下拉列表框与列表框均使用元素,中间包含一组元素提供选项,元素的常见属性如下:

size:如果指定size属性,则将下拉列表框变为单选列表框,size属性的值为列表框一屏显示的选项数量。

multiple:如果指定multiple属性,则将下拉列表框变为多选列表框,选择时按住键盘的【Ctrl】或【Shift】键可以实现多选,该属性不需要赋值。

元素的常见属性如下:

value:如果没有指定value属性,选中该选项会提交元素中的文本,如果指定value属性,则提交value属性中设置的值。

selected:如果指定selected属性,则本选项会初始化为选中状态,该属性不需要赋值。

12.多行输入框

多行输入框使用元素,用于输入多行文本,<textarea>元素的常用属性如下。

cols:多行输入框的宽度,单位为多行输入框当前字体的宽度。

rows:多行输入框的高度,单位为多行输入框当前字体的高度。

readonly:设置多行输入框是否为只读。

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务