博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
表单验证
阅读量:5147 次
发布时间:2019-06-13

本文共 1711 字,大约阅读时间需要 5 分钟。

<!DOCTYPE html>

<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>表单验证.html</title>
<style>
label{display:inline-block;width:65px;text-align: right;}
.btn{margin-left: 130px;}
.error{color:red;}
.ok{color:green;}
</style>
<script src="jquery-1.7.2.min.js"></script>
<script>
$(function(){
$("#username,#password").blur(function(){//当焦点不在用户名和密码框的时候
if($(this).parent().find("span").length>0){ //如果里面已经追加有span了,就讲它清空掉
$(this).parent().find("span").remove();
}
var val=$(this).val(); //获取当前输入框的值
var reg=/^\w{6,20}$/; //创建正则,首尾匹配只能输入6到20位的数字或者字母
if(!reg.test(val)){ //如果匹配的结果为false,即与创建的正则不匹配,就
$(this).parent().append('<span class="error">error</span>'); 在后面追加一个error,否则就追加一个ok
}else{
$(this).parent().append('<span class="ok">ok</span>');
}
});

$("#userform").submit(function(){ //当提交表单的时候触发被选元素的blur事件

$("#username").triggerHandler("blur");
$("#password").triggerHandler("blur");
if($("#userform").find(".error").length>0){//如果表单中已经有一个error,就不提交,否则,就提交
return false;
}
});
});
</script>
</head>
<body>
<form action="http://baidu.com" id="userform">
<p><label for="username">用户名:</label><input type="text" name="username" id="username"></p>
<p><label for="password">密 码:</label><input type="password" name="password" id="password"></p>
<p><input type="submit" value="提交" class="btn"></p>
</form>
</body>
</html>
补充:
triggerHandler() 方法触发被选元素上指定的事件。
该方法与 trigger() 方法类似,不同的是 trigger() 也触发事件的默认行为(比如表单提交)。
与 trigger() 方法相比的不同之处:
1、它不会引起事件(比如表单提交)的默认行为
2、.trigger() 会操作 jQuery 对象匹配的所有元素,而 .triggerHandler() 只影响第一个匹配元素。
3、由 .triggerHandler() 创建的事件不会在 DOM 树中冒泡;如果目标元素不直接处理它们,则不会发生任何事情。
该方法的返回的是事件处理函数的返回值,而不是具有可链性的 jQuery 对象。此外,如果没有处理程序被触发,则这个方法返回 undefined。

转载于:https://www.cnblogs.com/annie211/p/6009226.html

你可能感兴趣的文章
启动tomcat时出现乱码——淇℃伅(转)
查看>>
9.1 正睿提高2
查看>>
HDU.1693.Eat the Trees(插头DP)
查看>>
Java基本语法——(用于日后复习)
查看>>
C# Socket
查看>>
Java的abstract抽象
查看>>
babel编译器相关知识
查看>>
RecyclerView实现点击回复效果
查看>>
windows7安装教程(vmware)
查看>>
Windows Server 2003添加防火墙策略教程
查看>>
weblogic CVE-2017-10271修复教程
查看>>
济南清北学堂游记 Day 3.
查看>>
Qt布局
查看>>
hadoop 文件合并
查看>>
Leetcode: Jump Game
查看>>
补漏-1
查看>>
CSS3 六边形绘制
查看>>
linux下安装php扩展redis缓存
查看>>
未能找到类型或命名空间名称“Quartz”
查看>>
CLOB型转成字符型
查看>>