HTML5 - 用Modernizr检测浏览器对表单和表单验证的支持情况
2016-03-17 14:55
661 查看
不同浏览器对HTML5表单的支持不一样。比如:IE9就不支持HTML5表单验证。这样就需要我们对不支持的浏览器提供备用方案。
利用Modernizr可以检测浏览器对各种HTML5表单验证功能的支持情况。比如:Modernizr.input.required属性可以检测出浏览器是否支持required属性。其它属性还有:pattern,placeholder,autofocus,max,min和step。
当检测到浏览器不支持时,我们就可以使用自己写的验证代码。
下面以给必填字段提供自定义验证代码为例:
原文出自:www.hangge.com 转载请保留原文链接:http://www.hangge.com/blog/cache/detail_860.html
利用Modernizr可以检测浏览器对各种HTML5表单验证功能的支持情况。比如:Modernizr.input.required属性可以检测出浏览器是否支持required属性。其它属性还有:pattern,placeholder,autofocus,max,min和step。
当检测到浏览器不支持时,我们就可以使用自己写的验证代码。
下面以给必填字段提供自定义验证代码为例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>必填验证</title> <script src="modernizr.min.js"></script> <script> function validateForm() { //不支持required属性,因此必须自己编写检测代码 if(!Modernizr.input.required){ //首先获取表单里的所有元素 var inputElements = document.getElementById("form1").elements; //遍历数组,检测每个元素 for(var i=0;i<inputElements.length;i++) { //检测当前元素是否必填 if(inputElements[i].hasAttribute("required")){ //如果空表示表单验证失败 if(inputElements[i].value=="") return false; } } return true; } } </script> </head> <body> <form id="form1" action="#" onsubmit="return validateForm()"> <input type="text" required/> <input type="submit" value="提交"> </form> </body> </html>
原文出自:www.hangge.com 转载请保留原文链接:http://www.hangge.com/blog/cache/detail_860.html
相关文章推荐
- Html5游戏从0开始
- HTML5 - 表单客户端验证
- HTML5 - 使用autofocus让控件自动获取焦点
- HTML5新增的元素和废除的元素
- HTML5 - 使用占位符文本placeholder添加文本框提示
- HTML5事件——contextmenu 隐藏鼠标右键菜单
- HTML5的canvas标签
- HTML5使用canvas绘制图形
- HTML5 - 使用<mark>标注高亮突显文本
- HTML5表单新增元素与属性 (续)
- HTML5表单新增元素与属性
- HTML5新增的非主体结构元素
- HTML5 - 使用<time>标注日期和时间
- HTML5 - 页面结构相关的新语义元素汇总
- HTML5 - 经典的上中下三段式布局(并使用<nav>实现侧边导航链接)
- HTML5 - 让老浏览器支持新语义元素的几种方法
- html5 图片转base64预览显示
- HTML5 - 在线检测网页在各种浏览器下的效果
- HTML5 - 使用Geolocation(地理定位)获取用户的位置
- HTML5 - 用<figure/>添加插图和图题