大概实现了,用户名是否存在,邮箱是否已注册,密码是否符合复杂度。

//对用户名校验是否存在
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实现注册时检查邮箱,名称,密码等是否符合规则的更多相关文章

  1. Struts2(四.注册时检查用户名是否存在及Action获取数据的三种方式)

    一.功能 1.用户注册页面 <%@ page language="java" contentType="text/html; charset=UTF-8" ...

  2. 《JavaWeb从入门到改行》注册时向指定邮箱发送邮件激活

    javaMail API javaMail是SUN公司提供的针对邮件的API . 两个jar包  mail.jar 和 activation.jar java mail中主要类:javax.mail. ...

  3. 通用且常用的Java正则匹配工具,用以检查邮箱名、电话号码、用户密码、邮政编码等合法性

    一个通用且常用的Java正则匹配工具,用以检查邮箱名.电话号码.用户密码.邮政编码等合法性. import java.util.regex.Matcher; import java.util.rege ...

  4. C#发送邮件时提示:“不允许使用邮箱名称。服务器响应为:”的错误解决办法

    由于项目需要,要为客户提供一个定期发送邮件的程序.本来原来自己还写过,但新写的程序一晚上也没通过测试,总是提示"不允许使用邮箱名称.服务器响应为..." 经过在网上搜索查找解决办法 ...

  5. 本博文将一步步带领你实现抽屉官网的各种功能:包括登陆、注册、发送邮箱验证码、登陆验证码、页面登陆验证、发布文章、上传图片、form验证、点赞、评论、文章分页处理以及基于tronado的后端和ajax的前端数据处理。

    本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tronado的后端和ajax的 ...

  6. archive成功了,但是在输出ipa时要求有账号密码

    archive成功了,但是在输出ipa时要求有账号密码 可以通过命令行方式输出,绕开账号检查1.进入Windows-Organizer-Archives,找到要输出的scarchive列表项:2.右键 ...

  7. 【关于JavaScript】常见表单用户名、密码不能为空

    在论坛等系统的用户注册功能中,如果用户忘记填写必填信息,如用户名.密码等,浏览器会弹出警告框,提示用户当前有未填信息. 这个典型的应用就是通过JavaScript实现的.如图所示是一个简单的用户注册页 ...

  8. AspNetCore-MVC实战系列(二)之通过绑定邮箱找回密码

    AspNetCore - MVC实战系列目录 . 爱留图网站诞生 . AspNetCore - MVC实战系列(一)之Sqlserver表映射实体模型 . AspNetCore-MVC实战系列(二)之 ...

  9. Django实现注册,往邮箱发送验证链接

    由于最近要做个平台,在GitHub上下载了一个系统框架,想着为了安全,实现注册时往一个邮箱发送注册信息,由管理员来确认是否同意其注册. 感谢博主:https://blog.csdn.net/geek_ ...

随机推荐

  1. opencc模块用langconv替换

    将一下两个py下载并放入代码目录:https://raw.githubusercontent.com/skydark/nstools/master/zhtools/langconv.py https: ...

  2. spring controller使用了@ResponseBody却返回xml

    使用ajax请求数据 $.ajax({ url:message.rootPath +"/sendMessage.xhtml", type:"post", dat ...

  3. Linux运维基础采集项

    1. Linux运维基础采集项 做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑.所以,依靠强大的监控系统,收集尽可能多的指标,意义重大.但哪些指标才是有意义的呢,本着从实践中来的思想,各位工 ...

  4. HDU3449_Consumer

    这个是一个背包的变形题,很值得仔细体味 大致题意: 这个比普通背包多一个限制:再选每一类物品之前必须要先购买一个篮子来装,篮子有一定的价格,其他就和背包是一样的了 思路: 为了能够体现篮子的价值,我们 ...

  5. ubuntu 配置php环境

    第一步:先更新 sudo apt-get update 第二步:安装 安装 Apache2: sudo apt-get install apache2 安装PHP模块: sudo apt-get in ...

  6. 搭建 webpack、react 开发环境(二)

    配置处理样式文件   到目前为止,整个工程的配置已经差不多了,对于 React 更多相关的配置将在后面继续介绍,现在我们先来对目前的工程进行优化. 前面我们学习了搭建 webpack.react 开发 ...

  7. 搭建git服务器遇到的问题

    1.错误提示: remote: error: insufficient permission for adding an object to repository database ./objects ...

  8. python3学习笔记——数字、字符串、列表、字典、元组

    什么是python解释器? python代码在解释器中运行.解释器是代码与计算机硬件之间的软件逻辑层. python的执行过程                                      ...

  9. 【转】优秀的Vue UI组件库

    原文来源:https://www.leixuesong.com/3342 Vue 是一个轻巧.高性能.可组件化的MVVM库,API简洁明了,上手快.从Vue推出以来,得到众多Web开发者的认可.在公司 ...

  10. Linux运维常用脚本整理

    .查找当前目录下占用为0字节的文件并删除 find ./ -type f -size -exec rm -rf {}\;    #此命令不要用于对根目录0字节文件的操作 .将系统进程按内存占用大小排列 ...