邮箱&&密码验证-原理
原理版:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单验证</title>
<style>
* {
padding: 0;
margin: 0;
} #myForm {
width: 400px;
padding: 20px;
margin: 50px auto;
border: 1px solid #eee;
} input {
margin: 20px 20px 20px 10px;
padding: 5px 10px;
}
</style>
<script src="../js/jquery.min.js"></script>
<script>
$(function () {
var flag = false;
// blur: 元素失去光标触发的事件;
$("#txt").blur(function () {
var re = /\w+@\w+(\.\w){1,3}/;
if (re.test($(this).val())) {
$("span").eq(0).html("输入正确").css("color", "green");
flag1 = true;
} else {
$("span").eq(0).html("格式错误").css("color", "red");
flag1 = false;
}
})
$("#pwd").blur(function () {
// ^: 在中括号里表示取反(排除), 在中括号外表示从头开始;
// $: 表示结尾。
var re = /^\S{6,12}$/;
if ( re.test($(this).val()) ) {
$("span").eq(1).html("输入正确").css("color", "green");
flag2 = true;
} else {
$("span").eq(1).html("格式错误").css("color", "red");
flag2 = false;
}
})
$(":submit").click( function () {
// triggerHandler: 自动触发事件;
$("#txt").triggerHandler("blur");
$("#pwd").triggerHandler("blur");
if ( flag1 == false || flag2 == false ) {
return false;
}
})
})
</script>
</head>
<body>
<form action="http://www.baidu.com" id="myForm">
邮箱: <input type="text" id="txt"><span></span> <br>
密码: <input type="password" name="" id="pwd"><span></span> <br>
<input type="submit" value="提交">
</form> </body>
</html>
升级适应版:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.ok {
color: green;
} .error {
color: red;
}
</style>
<script src="../js/jquery.min.js"></script>
<script>
$(function () {
$("#user").blur(function () {
var re = /\w+@\w+(\.\w+){1,3}$/;
if ($(this).parent().find(".ok,.error").length > 0) {
$(this).parent().find(".ok,.error").remove();
}
if (re.test($(this).val())) {
$(this).parent().append("<span class='ok'>格式正确</span>");
} else {
$(this).parent().append("<span class='error'>格式错误</span>");
}
});
$("#pwd").blur(function () {
var re = /\w{6,20}$/;
if ($(this).parent().find(".ok,.error").length > 0) {
$(this).parent().find(".ok,.error").remove();
}
if (re.test($(this).val())) {
$(this).parent().append("<span class='ok'>格式正确</span>");
} else {
$(this).parent().append("<span class='error'>格式错误</span>");
}
});
$(":submit").click(function () {
$("#user").triggerHandler("blur");
$("#pwd").triggerHandler("blur");
if ($("#userForm").find(".error").length > 0) {
return false;
}
});
});
</script>
</head>
<body>
<form action="http://www.baidu.com" id="userForm">
<p>
邮箱: <input type="text" name="" id="user">
</p>
<p>
密码: <input type="text" name="" id="pwd">
</p>
<p>
<input type="submit" value="注册" id="reg">
</p>
</form>
</body>
</html>
邮箱&&密码验证-原理的更多相关文章
- javascript,html,正则表达式,邮箱密码验证
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- spring security的BCryptPasswordEncoder加密和对密码验证的原理
目录 BCryptPasswordEncoder加密和对密码验证的原理 一.加密算法和hash算法的区别 二.源码解析 1. encode方法 2. BCrypt.hashpw方法 3. matche ...
- shopnc 支持 支付宝快捷登陆 shopnc权限验证原理说明
为目前使用的是shopnc商场二次开发,shopnc本身做了qq互联和微博快捷登陆的api,做成了集成通用的接口 首先说下基本的这种类型的api访问方式,首先,的有个配置文件,配置你申请的id和key ...
- 【WCF】使用“用户名/密码”验证的合理方法
我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...
- Java实现注册邮箱激活验证
邮件发送servelet实现 package com.xbs.register.main; import java.io.IOException;import java.util.Date;impor ...
- 跑PIN码破解无线网络WIFI密码的原理分析(转)
你们家用的无线路由器安全吗?有人蹭网吗?无线路由器的漏洞在哪里?这么避免蹭网? 想要了解这些,必须要了解加密以及破解原理. 工具/原料 电脑 足够多足够好的wifi信号源 usb无线网卡(非必需) 一 ...
- 一个基于POP3协议进行邮箱账号验证的类
最近老陈要针对企业邮箱做一些开发,以对接企业OA神马的,但企业邮箱唯独没有开放账号密码验证功能,很恼火!不得已,翻出早些年的Asp代码改编成了C#类,实现了一个C#下的通过POP3协议进行邮箱账号验证 ...
- NT平台ADSL拨号连接密码恢复原理
NT平台拨号连接密码恢复原理 创建时间:2004-11-08 更新时间:2004-11-12文章属性:原创文章提交:eyas (eyas_at_xfocus.org)NT平台拨号连接密码恢复原理Aut ...
- Discuz常见小问题-如何设置163邮箱注册验证
参考网址: https://jingyan.baidu.com/album/c843ea0b804a6e77931e4aa7.html?picindex=3 http://www.discuz.net ...
随机推荐
- Node.js,commonjs,require
环境: Node应用由模块组成,采用CommonJS模块规范. node的全局对象是global,没有window这个对象. process表示当前执行的进程,挂在global之下. CommonJS ...
- Kotlin——基础的函数/方法详解
对于Kotlin中的函数来说,和JavaScript或者Lua这些语言很像,它有着这些语言的特性.但是也与这些语言就着许多不同之处.或许你更了解Java语言,然而对于Java语言来说,它不是不是闭包这 ...
- Android项目中的换肤总结
纵观现在各种Android app,其换肤需求可以归为 白天/黑夜主题切换(或者别的名字,通常2套),如同花顺/自选股/天天动听等,UI表现为一个switcher. 多种主题切换,通常为会员特权,如Q ...
- python︱模块加载(pip安装)以及pycharm安装与报错解决方式
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 准备放下R开始学python,真是痛苦,因为找 ...
- dojo实现省份地市级联报错(二)
- AM335X的USB otg网卡(RNDIS /Ethernet Gadget)调试
重新编译内核(2.6.29) 2.6.29内核 Device Drivers ---> USB support ---> USB Gadget Support ...
- HI3531由DMA 发起PCIe 事务
Hi3531 PCIe 控制器内含DMA 控制器,DMA 控制器包含有两个DMA 通道(一个 DMA 读通道和一个DMA 写通道).PCIe 控制器内包含的DMA 控制器用于大数据量 的存储器读写事务 ...
- live555编译环境
Ⅰ live555简介 Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP.RTSP.SIP等的支持.Live555实现了对多种音视频编 ...
- JavaWeb中jdbcproperties配置文件
开发中使用properties配置文件,方便后期维护. 文件位置: 任意,建议src下 文件名称:任意,扩展名为properties 文件内容:一行一组数据,格式“key=value” key 命名自 ...
- 关于CS1061报错(XX不包含XXX的定义,并且找不到类型为XX的第一个参.....)的一种可能的解决的办法
在我编程中,我遇到了一个这样的报错, 可是我引用的product类中又确实定义了这么一个方法, protected void BindPageData(int categoryID) { Produc ...