日期:2013-12-16 浏览次数:20689 次
品类型:动态效果(动态JS、jQuery作品) |
作品描述:将HTML5的超级简单表单验证方式带入IE和其他老浏览器 |
制造思路:编写一个插件,让老旧浏览器也可以使用html5语法来进行表达验证,只需在底层拦截submit事件,发现不符验证规则后利用jQuery触发invalid事件。开发者只需简单的绑定invalid事件,即可以完成以往很复杂的表单验证功用。 |
置信喜欢新颖事物的前端er曾经尝试过了HTML5的表单验证功用,非常强大的说。<input>中加入required就成为必填项了,
在pattern中写一个正则表达式,就能强制所填格式。下面是一个demo
<form>
<input placeholder="必须填3-5位的下划线,数字、字母" required pattern="\w{3,5}">
<input type="submit">
</form>
<script src="http://code.jquery.com/jquery.js"></script>
<script src="form.html5.js"></script>
<script>
$("input").bind("invalid", function(e){
alert("错误,必须填3-5位的下划线,数字、字母");
return false;
});
$("html").submit(function(e){
if(e.isPropagationStopped()){
return;
}
alert("表单成功提交");
return false;
});
</script>
非常简单有木有?我们所需求做的只要两步步
1.将验证规则写成正则表达式放在input标签中的pattern属性里
2.jQuery拦截input的invalid事件
完成这两步,就曾经可以在现代浏览器下完成表单验证了。
但是那么如何支持老旧浏览器呢?只需添加一行代码
<script src="form.html5.js"></script>
同时还需求下载这三个文件并确保三个文件在同一目录下。
(select.htc的用途与表单验证无关.)
当你发生如下情况,可以回帖联系我