HTML5 输入类型
本章节主要讲解 HTML5 中追加的新的输入类型及其用法。
HTML5 输入类型
HTML5 增加了多个新的输入类型如下:
输入类型 | 描述 |
---|---|
color | 定义输入控件的颜色值。可选择颜色。 |
date | 定义输入控件的日期值。可选择或输入日期。 |
datetime | 定义输入控件的日期值。可选择或输入时间。 |
datetime-local | 定义输入控件的日期值。可选择或输入日期时间。 |
定义输入控件为email。 | |
month | 定义输入控件为月份。 |
number | 定义输入控件为数字。 |
range | 定义输入控件为范围。 |
search | 定义输入控件为查询。 |
tel | 定义输入控件为电话号码。 |
time | 定义输入控件为时间(时/分)。 |
url | 定义输入控件为url。 |
week | 定义输入控件为年周。 |
注释:老式 web 浏览器不支持的输入类型,会被视为输入类型 text。
输入类型:number
<input type="number"> 用于应该包含数字值的输入字段。
您能够对数字做出限制。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
数值约束会应用到输入字段中。
</p>
<form action="/example/html/action_page.aspx">
数量(1 到 5 之间):
<input type="number" name="quantity" min="1" max="5">
<input type="submit">
</form>
<p><b>注释:</b>IE9 及早期版本不支持 type="number"。</p>
</body>
</html>
输入限制
这里列出了一些常用的输入限制(其中一些是 HTML5 中新增的):
属性 | 描述 |
---|---|
disabled | 规定输入字段应该被禁用。 |
max | 规定输入字段的最大值。 |
maxlength | 规定输入字段的最大字符数。 |
min | 规定输入字段的最小值。 |
pattern | 规定通过其检查输入值的正则表达式。 |
readonly | 规定输入字段为只读(无法修改)。 |
required | 规定输入字段是必需的(必需填写)。 |
size | 规定输入字段的宽度(以字符计)。 |
step | 规定输入字段的合法数字间隔。 |
value | 规定输入字段的默认值。 |
实例
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持::<br>
固定步骤将应用于输入字段。
</p>
<form action="/example/html/action_page.aspx">
数量:
<input type="number" name="points" min="0" max="100" step="10" value="30">
<input type="submit">
</form>
<p><b>备注:</b>type="number" 在 IE9 或更早版本中不支持。
</p>
</body>
</html>
输入类型:date
<input type="date"> 用于应该包含日期的输入字段。
根据浏览器支持,日期选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
生日:
<input type="date" name="bday">
<input type="submit">
</form>
<p><b>注释:</b>Firefox 或者 Internet Explorer 11 以及更早版本不支持 type="date"。</p>
</body>
</html>
您可以向输入添加限制:
<!DOCTYPE html>
<html>
<body>
<form action="/example/html/action_page.aspx">
请输入 1980-01-01 之前的日期:<br>
<input type="date" name="bday" max="1979-12-31"><br><br>
请输入 2021-01-01 之后的日期:<br>
<input type="date" name="bday" min="2021-01-02"><br><br>
<input type="submit">
</form>
<p><b>注释:</b>
Internet Explorer 不支持 type="date"。</p>
</body>
</html>
输入类型:color
<input type="color"> 用于应该包含颜色的输入字段。
根据浏览器支持,颜色选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
Select your favorite color:
<input type="color" name="favcolor" value="#ff0000">
<input type="submit">
</form>
<p><b>备注:</b> type="color" 在 Internet Explorer 中不被支持。</p>
</body>
</html>
输入类型:range
<input type="range"> 用于应该包含一定范围内的值的输入字段。
根据浏览器支持,输入字段能够显示为滑块控件。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
输入类型 "range" 可显示为滑动控件。
</p>
<form action="/example/html/action_page.aspx" method="get">
Points:
<input type="range" name="points" min="0" max="10">
<input type="submit">
</form>
<p><b>注释:</b>IE9 及早期版本不支持 type="range"。</p>
</body>
</html>
您能够使用如下属性来规定限制:min、max、step、value。
输入类型:month
<input type="month"> 允许用户选择月份和年份。
根据浏览器支持,日期选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
生日(月和年):
<input type="month" name="bdaymonth">
<input type="submit">
</form>
<p><b>注释:</b>Firefox 或者
Internet Explorer 11 以及更早版本不支持 type="month"。</p>
</body>
</html>
输入类型:week
<input type="week"> 允许用户选择周和年。
根据浏览器支持,日期选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
Select a week:
<input type="week" name="year_week">
<input type="submit">
</form>
<p><b>注释:</b>
Internet Explorer 不支持 type="week"。</p>
</body>
</html>
输入类型:time
<input type="time"> 允许用户选择时间(无时区)。
根据浏览器支持,时间选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
请选取一个时间:
<input type="time" name="usr_time">
<input type="submit">
</form>
<p><b>注释:</b>Firefox 或者
Internet Explorer 11 以及更早版本不支持 type="time"。</p>
</body>
</html>
输入类型:datetime
<input type="datetime"> 允许用户选择日期和时间(有时区)。
根据浏览器支持,日期选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
生日(日期和时间):
<input type="datetime" name="bdaytime">
<input type="submit">
</form>
<p><b>注释:</b>Chrome、Firefox 或 Internet Explorer 不支持 type="datetime"。</p>
</body>
</html>
输入类型:datetime-local
<input type="datetime-local"> 允许用户选择日期和时间(无时区)。
根据浏览器支持,日期选择器会出现输入字段中。
<!DOCTYPE html>
<html>
<body>
<p>
根据浏览器支持:<br>
当您填写输入字段时会弹出日期选择器。
</p>
<form action="/example/html/action_page.aspx">
生日(日期和时间):
<input type="datetime-local" name="bdaytime">
<input type="submit" value="Send">
</form>
<p><b>注释:</b>Firefox 或者
Internet Explorer 不支持 type="datetime-local"。</p>
</body>
</html>
输入类型:email
<input type="email"> 用于应该包含电子邮件地址的输入字段。
根据浏览器支持,能够在被提交时自动对电子邮件地址进行验证。
某些智能手机会识别 email 类型,并在键盘增加 ".com" 以匹配电子邮件输入。
<!DOCTYPE html>
<html>
<body>
<form action="/example/html/action_page.aspx">
E-mail:
<input type="email" name="email">
<input type="submit">
</form>
<p>
<b>注释:</b>IE9 及更早版本不支持 type="email"。</p>
</body>
</html>
输入类型:search
<input type="search"> 用于搜索字段(搜索字段的表现类似常规文本字段)。
<!DOCTYPE html>
<html>
<body>
<form action="/example/html/action_page.aspx">
搜索谷歌:
<input type="search" name="googlesearch">
<input type="submit">
</form>
</body>
</html>
输入类型:tel
<input type="tel"> 用于应该包含电话号码的输入字段。
目前只有 Safari 8 支持 tel 类型。
<!DOCTYPE html>
<html>
<body>
<form action="/example/html/action_page.aspx">
电话号码:
<input type="tel" name="usrtel">
<input type="submit">
</form>
<p><b>注释:</b>Safari 8 及更新版本支持 type="tel"。</p>
</body>
</html>
输入类型:url
<input type="url"> 用于应该包含 URL 地址的输入字段。
根据浏览器支持,在提交时能够自动验证 url 字段。
某些智能手机识别 url 类型,并向键盘添加 ".com" 以匹配 url 输入。
<!DOCTYPE html>
<html>
<body>
<form action="/example/html/action_page.aspx">
请添加您的首页:
<input type="url" name="homepage">
<input type="submit">
</form>
<p><b>Note:</b>IE9 及其更早版本不支持 type="url"。</p>
</body>
</html>