HTML5之表单详解
时间:2011-02-22 来源:RobinOuyang
阅读本文前建议在Opera最新版中打开样例演示页查看样例演示
一、表单结构更自由
XHTML中需要放在form之中的诸如inpu/button/select/textarea等标签元素,在HTML5中完全可以放在页面任何位置,然后通过新增的form属性指向元素所属表单的ID值,即可关联起来。
比如:
<FORM id=iform> |
二、多样的输入类型(大部分新类型目前并不为所有标准浏览器支持,请参见样例演示中的提示)
email输入类型
<INPUT type=email name=email> |
此类型要求输入格式正确的email地址,否则浏览器是不允许提交的,并会有一个错误信息提示.此类型必须指定name值,否则无效果.
url输入类型
<INPUT type=url> |
上面代码展示的文本域要求输入格式正确的URL地址,Opera中会自动在开始处添加http://.
日期时间相关输入类型(这些个很牛X的)
<INPUT type=date> |
这一系列是很酷的一个类型,完全解决了烦琐的JS日历控件问题.但目前MS只有Opera/Chrome新版本支持,且展示效果也不一样.
number输入类型(这些个很牛X的)
<INPUT type=number> |
这个不用多解释了,要求输入一个数字字符,若未输入则会抛出一个错误.
range输入类型
<INPUT type=range> |
此类型将显示一个可拖动的滑块条,并可通过设定max/min/step值限定拖动范围.拖动时会反馈给value一个值.
search输入类型
<INPUT type=search> |
此类型表示输入的将是一个搜索关键字,通过results=s可显示一个搜索小图标.
tel输入类型
<INPUT type=tel> |
此类型要求输入一个电话号码,但实际上它并没有特殊的验证,与text类型没什么区别.
color输入类型
<INPUT type=color> |
此类型表单,可让用户通过颜色选择器选择一个颜色值,并反馈到value中.
三、新增的表单属性
placeholder属性
<INPUT id=placeholder |
这是一个很实用的属性,免去了用JS去实现点击清除表单初始值.浏览器支持也还不错,MS除了Firefox,其他标准浏览器都能很好的支持.
require/pattern属性
<INPUT id=placeholder name=require required> |
表单验证属性,require类型时,若输入值为空,则拒绝提交,并会有一个提示。上面两种写法都对,这个很有用。并且可以用于textarea以及hidden/image/submit类型.pattern类型为正则验证,可以完成各种复杂的验证。这两种类型必须指定name值,否则无效果。
autofocus属性
<INPUT autofocus="true"> |
默认聚焦属性,可在页面加载时聚焦到一个表单控件,类似于JS的focus().
list属性
<INPUT id=list list="ilist"> |
该属性需要与datalist属性共用,datalist是对选择框的记忆,而list属性可以为选择框自定义记忆的内容。
max/min/step属性
<INPUT type=range step="20" min="1" |
限制值的输入范围,以及值的输入渐进程度,比如可在number设定输入最大值最小值,或者在range中设定拖动阶梯。
autocomplete属性
<INPUT id=autocomplete |
此属性是为表单提供自动完成功能。如果该属性为打开状态可很好地自动完成。一般来说,此属性必须启动浏览器的自动完成功能。
路漫漫其修远兮,吾将上下而求索。前端之路,学无止尽。痛并快乐着。
转载自http://www.chinaz.com/Design/Rules/02211600112011.html