<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>用户注册 - 当当网</title>
<link href="../css/login.css" rel="stylesheet" type="text/css" />
<link href="../css/page_bottom.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../js/jquery-1.7.1.js"></script>
<script type="text/javascript">
var flag = {
"email":false,
"nickname":false,
"password":false,
"verify":false
}; $(function(){
$("#txtEmail").blur(function () {
var email=$(this).val();
//alert(email);
if(email==""){
$("#email\\.info").html("Email地址不能为空");
return;
}
var pattern=/\b(^['_A-Za-z0-9-]+(\.['_A-Za-z0-9-]+)*@([A-Za-z0-9-])+(\.[A-Za-z0-9-]+)*((\.[A-Za-z0-9]{2,})|(\.[A-Za-z0-9]{2,}\.[A-Za-z0-9]{2,}))$)\b/;
if(!pattern.test(email)){
$("#email\\.info").html("Email格式不正确");
return;
}
$.get("check_email.php?email="+email,null,
function(data){
$("#email\\.info").html(data);
if (data=="可以注册") {
flag.email=true;
}
}
);
});
$("#txtNickName").blur(function () {
var nickname=$(this).val();
if(nickname==""){
$("#name\\.info").html("昵称不能为空");
return;
}
var pattern = /\b(^['A-Za-z0-9]{4,20}$)\b/;
if (!pattern.test(nickname)) {
$("#name\\.info").html("昵称格式不正确");
return;
}else{
$("#name\\.info").html("昵称格式正确");
flag.nickname=true;
return;
}
});
$("#txtPassword").blur(function () {
var password=$(this).val();
if (password=="") {
$("#password\\.info").html("密码不能为空");
return;
}
var pattern = /\b(^['A-Za-z0-9]{4,20}$)\b/;
if (!pattern.test(password)) {
$("#password\\.info").html("密码格式不正确");
return;
}else{
$("#password\\.info").html("密码格式正确");
//flag.password=true;
return;
}
});
$("#txtRepeatPass").blur(function () {
var password1=$(this).val();
if (password1=="") {
$("#password1\\.info").html("密码不能为空");
return;
}
var pattern = /\b(^['A-Za-z0-9]{4,20}$)\b/;
if (!pattern.test(password1)) {
$("#password1\\.info").html("密码格式不正确");
return;
}else if(password1!=$("#txtPassword").val()){
$("#password1\\.info").html("两次输入的密码不一致");
return;
}else{
$("#password1\\.info").html("重复密码正确");
flag.password=true;
return;
}
});
$("#txtVerifyCode").blur(function () {
var verify=$(this).val();
if(verify==""){
$("#number\\.info").html("验证码不能为空");
return;
}
$.post("./verify/check.php",{verify:verify},
function(data){
$("#number\\.info").html(data);
if (data=="验证成功") {
flag.verify=true;
}
}
);
})
$("#f").submit(function(){
var ok = flag.email&&flag.password&&flag.verify&&flag.nickname;
if(ok==false){
alert("表单项正在检测或存在错误");
history.back();
return false;
}
return true;
});
})
</script>
</head>
<body>
<?php include("../common/head.php"); ?>
<div class="login_step">
注册步骤:<span class="red_bold">1.填写信息</span> > 2.验证邮箱 > 3.注册成功
</div>
<div class="fill_message">
<form name="ctl00" method="post" action="save_reg.php" id="f">
<h2>以下均为必填项</h2>
<table class="tab_login" >
<tr>
<td valign="top" class="w1">请填写您的Email地址:</td>
<td>
<input name="email" type="text" id="txtEmail" class="text_input"/>
<div class="text_left" id="emailValidMsg">
<p>请填写有效的Email地址。</p>
<span id="email.info" style="color:red"></span>
</div>
</td>
</tr>
<tr>
<td valign="top" class="w1">设置您在当当网的昵称:</td>
<td>
<input name="nickname" type="text" id="txtNickName" class="text_input" />
<div class="text_left" id="nickNameValidMsg">
<p>由小写英文字母、中文、数字组成,长度4-20个字符,一个汉字为两个字符。</p>
<span id="name.info" style="color:red"></span>
</div>
</td>
</tr>
<tr>
<td valign="top" class="w1">设置密码:</td>
<td>
<input name="password" type="password" id="txtPassword" class="text_input" />
<div class="text_left" id="passwordValidMsg">
<p>您的密码可以由大小写英文字母、数字组成,长度6-20位。</p>
<span id="password.info" style="color:red"></span>
</div>
</td>
</tr>
<tr>
<td valign="top" class="w1">再次输入您设置的密码:</td>
<td>
<input name="password1" type="password" id="txtRepeatPass" class="text_input"/>
<div class="text_left" id="repeatPassValidMsg">
<span id="password1.info" style="color:red"></span>
</div>
</td>
</tr>
<tr>
<td valign="top" class="w1">验证码:</td>
<td>
<img class="yzm_img" id='imgVcode' src='./verify/verify.php' style="cursor:pointer" border='0' onclick="document.getElementById('imgVcode').src='./verify/verify.php?t='+Math.random()"/>
<input name="number" type="text" id="txtVerifyCode" class="yzm_input"/>
<div class="text_left t1">
<p class="t1">
<span id="vcodeValidMsg">请输入图片中的四个字母。</span>
<a href="#" style="cursor:pointer" onclick="document.getElementById('imgVcode').src='./verify/verify.php?t='+Math.random()">看不清楚?换个图片</a>
<br />
<span id="number.info" style="color:red"></span>
</p>
</div>
</td>
</tr>
</table> <div class="login_in">
<input id="btnClientRegister" class="button_1" name="submit" type="submit" value="注 册"/>
</div>
</form>
</div>
<?php include("../common/foot.php"); ?>
</body>
</html>

php用户注册页面利用js进行表单验证的更多相关文章

  1. 利用JS提交表单的几种方法和验证(必看篇)

    第一种方式:表单提交,在form标签中增加onsubmit事件来判断表单提交是否成功 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <scr ...

  2. ★★★【卡法 常用js库】: js汇合 表单验证 cookie设置 日期格式 电话手机号码 email 整数 小数 金额 检查参数长度

    [卡法 常用js库]: js汇合 表单验证  cookie设置  日期格式  电话手机号码  email  整数  小数  金额   检查参数长度 // +---------------------- ...

  3. 利用JS提交表单的几种方法和验证

    第一种方式:表单提交,在form标签中增加onsubmit事件来判断表单提交是否成功 <script type="text/javascript"> function ...

  4. JS简单表单验证

    这里我是写了一个简单的注册表单验证功能,亲测有效,一起来看看吧! 首先我的HTML代码是这样的: class大家可以忽略一下,这里我项目使用的是bootstrap的样式. 输入用户名和密码用的是正则表 ...

  5. 原生JS写表单验证提交功能

    先上效果图: 表单的基础内容就是昵称判断.手机号判断.邮箱判断.身份证号码判断,这里是用到正则验证检验格式. 页面的表单写法就是一个form的提交.输入框用input来实现,输入内容用value来获取 ...

  6. JS实战 · 表单验证

    思路:         1.定义页面             通过表格格式化表单:             表格行都有自己的背景颜色:             单元格中的数据(文本等)用div进行封装 ...

  7. js基础-表单验证和提交

    基础知识: 原始提交如下: <form action="/login" method="post" id="form1"> &l ...

  8. 表单提交学习笔记(二)—使用jquery.validate.js进行表单验证

    一.官网下载地址:http://plugins.jquery.com/validate/ 二.用法 1.在页面上进行引用 <script src="~/scripts/jquery-1 ...

  9. 原生js制作表单验证,基本的表单验证方法

    表单验证是web前端最常见的功能之一,也属于前端开发的基本功.自己完成一个表单验证的开发,也有助于加深对字符串处理和正则表达式的理解. 基本的表单验证包括如:字母验证.数字验证.字母和数字验证.汉字验 ...

随机推荐

  1. 水平居中的那些事之解决jqpagination分页插件无法居中的问题

    固定宽度的元素水平居中只需要 margin-left:auto: margin-right:auto; 换成 margin:0 auto; 也是一样的 今天给我用的jqPagination分页插件实现 ...

  2. ipmitool查询服务器功耗

    通过ipmitool查看服务器功耗 ipmitool -H $ip -I lanplus -U $user -P $password sdr elist | grep "Pwr Consum ...

  3. sql server时间戳timestamp

    sql server时间戳timestamp 在SQL Server中联机丛书是这样说的: SQL Server timestamp 数据类型与时间和日期无关.SQL Server timestamp ...

  4. CSS预处理器(SASS和LESS)

    Sass框架应用Sass简介 Sass又名SCSS,是CSS预处理器之一,它能让你更好更轻松的工作.Sass官网是这样描述Sass的:**Sass是一门高于CSS的元语言,能用来清晰的.结构化地描述文 ...

  5. 条件概率全概率公式-Tribles

    条件概率,全概率公式,贝叶斯公式 条件概率:在另外一个事件 B 已经发生的条件下,事件 A 发生的概率叫做在 A 对于 B 的条件概率,记作 \(p(A|B)\).显然\(p(AB)=p(A|B)p( ...

  6. 数据结构7: 循环链表(约瑟夫环)的建立及C语言实现

    链表的使用,还可以把链表的两头连接,形成了一个环状链表,称为循环链表. 和它名字的表意一样,只需要将表中最后一个结点的指针指向头结点,就形成了一个环. 图1 循环链表 循环链表和动态链表相比,唯一的不 ...

  7. Swift 4.0 正式发布,更快更兼容更好用

    Swift4现已正式发布!Swift4在Swift3的基础上,提供了更强大的稳健性和稳定性,为Swift3提供源码兼容性,对标准库进行改进,并添加了归档和序列化等功能. 你可以通过观看WWDC2017 ...

  8. BA 认证

    IIBA-CBAP https://www.iiba.org/standards-and-resources/core-standard/ PMI-PBA https://www.pmi.org/ce ...

  9. Nexus 相关

    https://help.sonatype.com/repomanager3/download https://www.jianshu.com/p/5fc8fb14d25c

  10. STM32F030 使用硬件 SPI

    前言 以前玩过一点 STM32 单片机(主要是 STM32F103 系列),去年(2017)STM32F1 涨到不知哪里去了,今年好像降下来了.F0 系列相比 F1 系列少了一些功能,最高主频只到 4 ...