JavaScript实现注册时检查邮箱,名称,密码等是否符合规则
大概实现了,用户名是否存在,邮箱是否已注册,密码是否符合复杂度。
//对用户名校验是否存在
function checkname(){
//alert("checkname");
var f=false;
//javascript所有的变量都是以var定义的
//javascript的变量属于弱类型
//获取用户输入的用户名
var name = document.getElementById("usernameRe").value;
//去除字符串两端空格
name=name.trim();
//判断是否为空
if(name==""){
document.getElementById("username_span").innerHTML="用户名不能为空";
}else if(name.length<6||name.length>16){
document.getElementById("username_span").innerHTML="用户名的长度为6-16位";
}
else{
document.getElementById("username_span").innerHTML="";
//校验用户名是否存在
//使用ajax异步校验用户名
$.ajax({
url:"/oldbookweb_1/checkName",
type:"post",
data:{"username":name},
dataType:"json",
async:false,
success:function(data){
if(data.msg=="false"){
//alert("false");
document.getElementById("username_span").innerHTML="用户名已存在";
}else{
document.getElementById("username_span").innerHTML="用户名可用";
f=true;
}
}
});
}
return f;
}
function checkPassword(){
var password=document.getElementById("passwordReg").value;
var reg=/^[a-zA-Z]\w{5,15}$/;
var f = reg.test(password);
if(f==false){
document.getElementById("password_span").innerHTML="密码格式错误";
return false;
}else{
document.getElementById("password_span").innerHTML="";
return true;
}
}
function checkRepassword(){
var password=document.getElementById("passwordRe").value;
var repassword=document.getElementById("repassword").value;
if(password==repassword){
document.getElementById("repassword_span").innerHTML="";
return true;
}else{
document.getElementById("repassword_span").innerHTML="两次输入密码不一致";
return false;
}
}
//验证邮箱
function checkEmail(){
var email=document.getElementById("emailRe").value;
//两种引用正则表达式方式
//var reg = new RegExp("^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$");
var reg=/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/;
var f = reg.test(email);
if(f==false || email==""){
document.getElementById("email_span").innerHTML="邮箱格式错误";
return false;
}
else{
document.getElementById("email_span").innerHTML="";
//校验邮箱是否注册
//使用ajax异步校检邮箱
$.ajax({
url:"/oldbookweb_1/checkEmail",
type:"post",
data:{"email":email},
dataType:"json",
async:false,
success:function(data){
if(data.msg=="false"){
//alert("false");
document.getElementById("email_span").innerHTML="邮箱已注册";
}else{
document.getElementById("email_span").innerHTML="邮箱可用";
f=true;
}
}
});
}
return f;
}
function check(){
var name = checkname();
var password = checkPassword();
var repassword = checkRepassword();
var nickname = checkNickname();
var email= checkEmail(http://www.my516.com);
if(name&&password&&repassword&&nickname&&email)
return true;
else
return false;
}
这是controller的checkName和checkEmail方法
/**
* 检查邮箱是否已注册
* @param email
* @return
*/
@RequestMapping("checkEmail")
@ResponseBody
public String checkEmail(String email) {
System.out.println("checkEmail");
System.out.println("email=="+email);
// 根据用户名查询是否存在该用户名
User user = userService.findUserByEmail(email);
// 当对象不为空,说明用户名存在
if (user != null) {
return "{\"msg\":\"false\"}";
}
return "{\"msg\":\"true\"}";
}
/**
* 检查账号名是否已存在
* @param username
* @return
*/
@RequestMapping("checkName")
@ResponseBody
public String checkName(String username) {
System.out.println("checkName");
System.out.println(username);
User user = userService.findUserByName(username);
if (user != null) {
return "{\"msg\":\"false\"}";
}
return "{\"msg\":\"true\"}";
}
---------------------
JavaScript实现注册时检查邮箱,名称,密码等是否符合规则的更多相关文章
- Struts2(四.注册时检查用户名是否存在及Action获取数据的三种方式)
一.功能 1.用户注册页面 <%@ page language="java" contentType="text/html; charset=UTF-8" ...
- 《JavaWeb从入门到改行》注册时向指定邮箱发送邮件激活
javaMail API javaMail是SUN公司提供的针对邮件的API . 两个jar包 mail.jar 和 activation.jar java mail中主要类:javax.mail. ...
- 通用且常用的Java正则匹配工具,用以检查邮箱名、电话号码、用户密码、邮政编码等合法性
一个通用且常用的Java正则匹配工具,用以检查邮箱名.电话号码.用户密码.邮政编码等合法性. import java.util.regex.Matcher; import java.util.rege ...
- C#发送邮件时提示:“不允许使用邮箱名称。服务器响应为:”的错误解决办法
由于项目需要,要为客户提供一个定期发送邮件的程序.本来原来自己还写过,但新写的程序一晚上也没通过测试,总是提示"不允许使用邮箱名称.服务器响应为..." 经过在网上搜索查找解决办法 ...
- 本博文将一步步带领你实现抽屉官网的各种功能:包括登陆、注册、发送邮箱验证码、登陆验证码、页面登陆验证、发布文章、上传图片、form验证、点赞、评论、文章分页处理以及基于tronado的后端和ajax的前端数据处理。
本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tronado的后端和ajax的 ...
- archive成功了,但是在输出ipa时要求有账号密码
archive成功了,但是在输出ipa时要求有账号密码 可以通过命令行方式输出,绕开账号检查1.进入Windows-Organizer-Archives,找到要输出的scarchive列表项:2.右键 ...
- 【关于JavaScript】常见表单用户名、密码不能为空
在论坛等系统的用户注册功能中,如果用户忘记填写必填信息,如用户名.密码等,浏览器会弹出警告框,提示用户当前有未填信息. 这个典型的应用就是通过JavaScript实现的.如图所示是一个简单的用户注册页 ...
- AspNetCore-MVC实战系列(二)之通过绑定邮箱找回密码
AspNetCore - MVC实战系列目录 . 爱留图网站诞生 . AspNetCore - MVC实战系列(一)之Sqlserver表映射实体模型 . AspNetCore-MVC实战系列(二)之 ...
- Django实现注册,往邮箱发送验证链接
由于最近要做个平台,在GitHub上下载了一个系统框架,想着为了安全,实现注册时往一个邮箱发送注册信息,由管理员来确认是否同意其注册. 感谢博主:https://blog.csdn.net/geek_ ...
随机推荐
- PPT技巧
1.秋叶个人的PPT三分钟教程 http://www.pptfans.cn/315656.html 2.<说服力-让你的PPT会说话>秋叶 3.<三体> https://w ...
- ffmpeg+nginx-rtmp-module
原址: https://www.cnblogs.com/cnsanshao/p/6370938.html另外: vlc播放器能播放rtsp协议 nginx安装和配置 模块下载 https://gith ...
- [CSP-S模拟测试]:z(模拟+map+小根堆)
题目背景 $\frac{1}{4}$遇到了一道水题,$eooooo$完全不会做,于是去请教小$D$.结果小$D$已经去了阿塞拜疆,于是,$\frac{1}{4}$只好来问你,这道题是这样的: 题目描述 ...
- 关于CSS中的单位px、em、rem
首先,px.em.rem都是相对单位: px(pixel像素)是相对于显示器屏幕分辨率的,IE无法调整那些使用px作为单位的字体大小: em是相对于当前对象内文本字体的尺寸,如当前对行内文本的字体尺寸 ...
- jenkins clone代码时间太长怎么办?
在Jenkins的默认配置中,clone代码时会拉取所有历史版本的代码,而且默认的超时时限只有10分钟.这就造成在某些项目中,由于代码量本身就比较大,历史版本也比较多,再加上网络环境不是特别好,Jen ...
- HBuilder的一些常用快捷键
Alt + [ 匹配括号 Alt + ↓跳转到下一个可编辑区Ctrl + Alt + j 合并下一行Ctrl + Alt + ←选择助手Ctrl + 回车 换行Ctrl + Shift + 回车 向上 ...
- 14. Jmeter-配置元件一
jmeter-配置元件介绍与使用 CSV 数据文件设置 HTTP信息头管理器 HTTP Cookie 管理器 HTTP Cache Manager HTTP请求默认值 计数器 DNS Cache Ma ...
- JavaScript Stack
function Stack() { var items = []; this.push = function(item) { items.push(item) } this.pop = functi ...
- Codeforces 1132D(二分答案+堆)
题面 传送门 分析 二分答案,考虑如何判定 可以用贪心的方法,每次找最快没电的电脑,在没电前1单位时间给它充电 正确性显然 实现上可以维护一个堆,存储每个电脑电用完的时刻,每次从堆顶取出最小的一个给它 ...
- luoguP2184 贪婪大陆 题解(树状数组)
P2184 贪婪大陆 题目 其实很容易理解就是询问一段区间内有多少段不同的区间 然后再仔细思索一下会发现: 1.只要一个区间的开头在一个节点i的左边,那么这个区间包含在区间1~i中. 2.只要一个区 ...