HTML5表单的Input类型及HTML5表单的新属性

        表单是电子商务网站中最常见的页面,包括注册账户、产生购买行为,是人机交互的最基本的技术。随着web等技术的一步一步发展,更加注重设计的人性化和友好性。所以为了提高编程人员的效率html5出现了,其中html5的表单就是很抢眼的一部分,虽说现在大部分浏览器对html5的支持不是非常好,但这必然是一种趋势,所以网站技术人员必须跟上发展,对新的事物要积极学习。希望小东北的这篇文章对你的进步会有所帮助:)

HTML5 新的 Input 类型

HTML5 拥有多个新的表单输入类型。这些新特性提供了更好的输入控制和验证。

本章全面介绍这些新的输入类型:

  • email
  • url
  • number
  • range
  • Date pickers (date, month, week, time, datetime, datetime-local)
  • search
  • color

浏览器支持

Input type  IE Firefox Opera Chrome Safari
email No No 9.0 No No
url No No 9.0 No No
number No No 9.0 No No
range No No 9.0 4.0 4.0
Date pickers No No 9.0 No No
search No No No No No
color No No No No No

注释:Opera 对新的输入类型的支持最好。不过您已经可以在所有主流的浏览器中使用它们了。即使不被支持,仍然可以显示为常规的文本域。

Input 类型 – email

email 类型用于应该包含 e-mail 地址的输入域。

在提交表单时,会自动验证 email 域的值。

实例

E-mail: <input type="email" />

提示:iPhone 中的 Safari 浏览器支持 email 输入类型,并通过改变触摸屏键盘来配合它(添加 @ 和 .com 选项)。

Input 类型 – url

url 类型用于应该包含 URL 地址的输入域。

在提交表单时,会自动验证 url 域的值。

实例

Homepage: <input type="url" />

提示:iPhone 中的 Safari 浏览器支持 url 输入类型,并通过改变触摸屏键盘来配合它(添加 .com 选项)。

Input 类型 – number

number 类型用于应该包含数值的输入域。

您还能够设定对所接受的数字的限定:

实例

Points: <input type="number" min="1" max="10" />

请使用下面的属性来规定对数字类型的限定:

属性 描述
max number 规定允许的最大值
min number 规定允许的最小值
step number 规定合法的数字间隔(如果 step=”3″,则合法的数是 -3,0,3,6 等)
value number 规定默认值

提示:iPhone 中的 Safari 浏览器支持 number 输入类型,并通过改变触摸屏键盘来配合它(显示数字)。

Input 类型 – range

range 类型用于应该包含一定范围内数字值的输入域。

range 类型显示为滑动条。

您还能够设定对所接受的数字的限定:

实例

<input type="range" min="1" max="10" />

请使用下面的属性来规定对数字类型的限定:

属性 描述
max number 规定允许的最大值
min number 规定允许的最小值
step number 规定合法的数字间隔(如果 step=”3″,则合法的数是 -3,0,3,6 等)
value number 规定默认值

Input 类型 – Date Pickers(数据检出器)

HTML5 拥有多个可供选取日期和时间的新输入类型:

  • date – 选取日、月、年
  • month – 选取月、年
  • week – 选取周和年
  • time – 选取时间(小时和分钟)
  • datetime – 选取时间、日、月、年(UTC 时间)
  • datetime-local – 选取时间、日、月、年(本地时间)

下面的例子允许您从日历中选取一个日期:

实例

Date: <input type="date" />

Input 类型 – search

search 类型用于搜索域,比如站点搜索或 Google 搜索。

search 域显示为常规的文本域。 

HTML5 的新的表单属性

本章讲解涉及 <form> 和 <input> 元素的新属性。

新的 form 属性:

  • autocomplete
  • novalidate

新的 input 属性:

  • autocomplete
  • autofocus
  • form
  • form overrides (formaction, formenctype, formmethod, formnovalidate, formtarget)
  • height 和 width
  • list
  • min, max 和 step
  • multiple
  • pattern (regexp)
  • placeholder
  • required

浏览器支持

Input type IE Firefox Opera Chrome Safari
autocomplete 8.0 3.5 9.5 3.0 4.0
autofocus No No 10.0 3.0 4.0
form No No 9.5 No No
form overrides No No 10.5 No No
height and width 8.0 3.5 9.5 3.0 4.0
list No No 9.5 No No
min, max and step No No 9.5 3.0 No
multiple No 3.5 No 3.0 4.0
novalidate No No No No No
pattern No No 9.5 3.0 No
placeholder No No No 3.0 3.0
required No No 9.5 3.0 No

autocomplete 属性

autocomplete 属性规定 form 或 input 域应该拥有自动完成功能。

注释:autocomplete 适用于 <form> 标签,以及以下类型的 <input> 标签:text, search, url, telephone, email, password, datepickers, range 以及 color。

当用户在自动完成域中开始输入时,浏览器应该在该域中显示填写的选项:

实例

<form action=”demo_form.asp” method=”get” autocomplete=”on”>

First name: <input /><br />

Last name: <input /><br />

E-mail: <input autocomplete=”off” /><br />

<input />

</form>

注释:在某些浏览器中,您可能需要启用自动完成功能,以使该属性生效。

autofocus 属性

autofocus 属性规定在页面加载时,域自动地获得焦点。

注释:autofocus 属性适用于所有 <input> 标签的类型。

实例

User name: <input  autofocus=”autofocus” />

form 属性

form 属性规定输入域所属的一个或多个表单。

注释:form 属性适用于所有 <input> 标签的类型。

form 属性必须引用所属表单的 id:

实例

<form action=”demo_form.asp” method=”get” id=”user_form”>

First name:<input />

<input />

</form>

Last name: <input form=”user_form” />

注释:如需引用一个以上的表单,请使用空格分隔的列表。

表单重写属性

表单重写属性(form override attributes)允许您重写 form 元素的某些属性设定。

表单重写属性有:

  • formaction – 重写表单的 action 属性
  • formenctype – 重写表单的 enctype 属性
  • formmethod – 重写表单的 method 属性
  • formnovalidate – 重写表单的 novalidate 属性
  • formtarget – 重写表单的 target 属性

注释:表单重写属性适用于以下类型的 <input> 标签:submit 和 image。

实例

<form action=”demo_form.asp” method=”get”>

E-mail: <input /><br />

<input value=”Submit” />

<br />

<input formaction=”demo_admin.asp” value=”Submit as admin” />

<br />

<input formnovalidate=”true” value=”Submit without validation” />

<br />

</form>

注释:这些属性对于创建不同的提交按钮很有帮助。

height 和 width 属性

height 和 width 属性规定用于 image 类型的 input 标签的图像高度和宽度。

注释:height 和 width 属性只适用于 image 类型的 <input> 标签。

实例

<input src=”img_submit.gif” width=”99″ height=”99″ />

list 属性

list 属性规定输入域的 datalist。datalist 是输入域的选项列表。

注释:list 属性适用于以下类型的 <input> 标签:text, search, url, telephone, email, date pickers, number, range 以及 color。

实例

Webpage: <input list=”url_list” />

<datalist id=”url_list”>

<option label=”W3Schools” value=”http://www.w3school.com.cn” />

<option label=”Google” value=”http://www.google.com” />

<option label=”Microsoft” value=”http://www.microsoft.com” />

</datalist>

min、max 和 step 属性

min、max 和 step 属性用于为包含数字或日期的 input 类型规定限定(约束)。

max 属性规定输入域所允许的最大值。

min 属性规定输入域所允许的最小值。

step 属性为输入域规定合法的数字间隔(如果 step=”3″,则合法的数是 -3,0,3,6 等)。

注释:min、max 和 step 属性适用于以下类型的 <input> 标签:date pickers、number 以及 range。

下面的例子显示一个数字域,该域接受介于 0 到 10 之间的值,且步进为 3(即合法的值为 0、3、6 和 9):

实例

Points: <input min=”0″ max=”10″ step=”3″ />

multiple 属性

multiple 属性规定输入域中可选择多个值。

注释:multiple 属性适用于以下类型的 <input> 标签:email 和 file。

实例

Select images: <input multiple=”multiple” />

novalidate 属性

novalidate 属性规定在提交表单时不应该验证 form 或 input 域。

注释:novalidate 属性适用于 <form> 以及以下类型的 <input> 标签:text, search, url, telephone, email, password, date pickers, range 以及 color.

实例

<form action=”demo_form.asp” method=”get” novalidate=”true”>

E-mail: <input />

<input />

</form>

pattern 属性

pattern 属性规定用于验证 input 域的模式(pattern)。

模式(pattern) 是正则表达式。您可以在《正则表达式匹配字符串-常见正则表达式》中了解到有关正则表达式的内容。

注释:pattern 属性适用于以下类型的 <input> 标签:text, search, url, telephone, email 以及 password。

下面的例子显示了一个只能包含三个字母的文本域(不含数字及特殊字符):

实例

Country code: <input

pattern=”[A-z]{3}” title=”Three letter country code” />

placeholder 属性

placeholder 属性提供一种提示(hint),描述输入域所期待的值。

注释:placeholder 属性适用于以下类型的 <input> 标签:text, search, url, telephone, email 以及 password。

提示(hint)会在输入域为空时显示出现,会在输入域获得焦点时消失:

实例

<input  placeholder=”Search W3School” />

required 属性

required 属性规定必须在提交之前填写输入域(不能为空)。

注释:required 属性适用于以下类型的 <input> 标签:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。

实例

Name: <input required=”required” />

今天就到这里,明天再给大家分享一个表单的实例,供初学者学习参考…

One Reply to “HTML5表单的Input类型及HTML5表单的新属性”

发表评论