HTML5 INPUT新增属性

HTML5的input标签新增了很多属性,也是让大家非常兴奋的一件事,用简单的一个属性搞定以前复杂的JS验证。input新增的这些属性,使得html和js的分工更明确了,使用起来十分舒畅。

我们先看下input新增了的属性:

新增属性一:autoconmplete

autoconmplete可以赋值为 on 或者 off。当为 on的时候,浏览器能自动存储用户输入的内容。当用户返回到曾经填写过值的页面的时候,浏览器能把用户写过的值自动填写在相应的input框里。

现在很多网站都实现了这个功能,不过基本都是用php来实现的。用了这个属性,无疑可以减少很多前端和后台的交流量和工作量。

新增属性二:autofocus

autofocus 可以赋值为 autofocus,也就是在页面加载完成的时候自动聚焦到这个input标签,自然 type=”hidden”的时候是不能用的。 这个也是一个比较常见的效果,至今为止的实现方法是用js。在页面加载完时执行聚焦操作,现在也被一个属性搞定了。

可以想象,一个页面至多只有一个input标签会设置 autofocus,否则必然不会达到预期效果。因为不可能同事聚焦在两个input上。

新增属性三:required

input的有一个强力新增属性,免去验证的麻烦。可以赋值为 required。

比如用户注册页面的用户名和密码都是必填的,只要设置一个required就可以了。而在以前是需要js来验证或者后台验证的。

注意:这里required属性是需要用户来填写的,所以TYPE是button、submit、reset、image等等不需要用户填写选择的类型是不可以使用这个属性的。

新增属性四:placeholder

这个新增属性也是非常使用,用在type= text email等等类型的时候,提示用户输入信息的格式或者内容等等。这个效果在之前也是需要js来实现的。是一种比较常见的效果:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>test</title>
</head>
<body>
<form method=”” action=””>
<p>Name: <input type=”text” name=”fullname” placeholder=”John Ratzenberger”></p>
<p>Address: <input type=”email” name=”address” placeholder=”john@example.net”></p>

</form>
</body>
</html>

 

新增属性五:新增list属性—联想框效果

这个属性显示类似于百度搜索框那种联想框效果,也是非常实用的一个属性。

注意从这个属性使用的特点:需要有对应的datalist标签;datalist子标签option支持 value和lable两个属性;list的属性值要和datalist的id一致。

使用示例 (opera支持)

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>test</title>
</head>
<body>
<form method=”” action=””>
Homepage: <input name=”hp” type=”url” list=”hpurls”>
<datalist id=”hpurls”>
<option value=”
http://www.google.com/” label=”Google”>
<option value=”
http://www.reddit.com/” label=”Reddit”>
</datalist>
</form>
</body>
</html>

效果图

 

 

新增属性六: min、max属性来限制数值范围,minheight、maxheight属性来限制字符串长度。

其他新增属性: height、width设置高和宽 form、formaction、formmethod、fromtarget、formenctype等等属性来覆盖掉默认设置。

Leave a Comment

Your email address will not be published.

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据