<!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. eclipse workspace 共享设置

    总结一下,复制工作空间配置步骤如下: 1 使用eclipse新建workspace. 2 将新建的workspace下的.metadata\.plugins内容全部删除. 3 将需要拷贝的worksp ...

  2. 市场上主流的BI产品的“答案之书”

    本文来自网易云社区. 从20世纪80年代开始,商业智能的定义出现在人们面前,早期商业智能十分基础和杂乱,不仅仅会把数据处理放进去.还包含有一些可视化方面内容等.这个时期的BI主要的功能是支持多维分析和 ...

  3. c++位运算符 | & ^ ~ && ||,补码,反码

    一:简介 1 位逻辑运算符: & (位   “与”)  and       ^  (位   “异或”)       |   (位    “或”)   or       ~  (位   “取反” ...

  4. 搭建 pytorch框架

    Pytorch 发布了1.0,对windows的支持效果更好,因此,今天试了一下安装Pytorch.安装速度确实很快,安装也很方便. 进入pytorch的官网,选择对应的版本 根据版本输入相应命令 注 ...

  5. 正经学C#_位移与其位移运算符[c#入门经典]

    在c#入门经典一书中,最为糟糕的一节就是位移了,完全没有讲明白,也没有说全,似乎只是轻轻点了一下何为位移,带了两次原码和补码,完全不理会是否明白不明白.这一点这本书很差.因为此书说了,在大多数应用开发 ...

  6. 容器编排之Kubernetes1.7.6安装与配置

    kubernetes官网的安装教程是采用kubeadm init的方式,但是在生产环境当中,可能需要独自手动安装k8s,本文采用源码安装的方式,一步步搭建k8s的master节点和node节点. 系统 ...

  7. 高效 MacBook 工作环境配置

    转自:https://mp.weixin.qq.com/s/sloc6HgKcosXtWcbMB_5hA 工欲善其事,必先利其器,工具永远都是用来解决问题的,没必要为了工具而工具,一切工具都是为了能快 ...

  8. 【bzoj1030】: [JSOI2007]文本生成器 字符串-AC自动机-DP

    [bzoj1030]: [JSOI2007]文本生成器 首先把匹配任意一个的个数的问题转化为总个数-没有一个匹配的个数 先构造AC自动机,然后枚举每一位的字母以及在自动机上的位置 f[i][j]为第i ...

  9. sap abap 流水号设置

    1.TCODE:SNRO,进入如图所示界面 2. 短文本和长文本用来说明这个编号范围对象,输入任意描述即可. 子对象数据元素我们这里不填.这里需要说明一下,所谓子对象,多数指一个组织结构,比如公司代码 ...

  10. Oracle恢复表数据

    Oracle恢复数据 在oracle 10g以及之后的版本,提供了回收站的机制,为了防止误操作将表数据清空而有回收机制. 换句话说,我们删除的表不会立马消失,而是进入回收站.下面我们可以查看回收站 查 ...