注册文件 reg.html

<html>
<style>
  #btn{
    background-color: red;
    color:white;
    width: 235px;
   }
  span{
    color: red;
  }
</style>
<center>
  <form action="doreg.php" method="post" >
  <table>
    <tr>
      <td>用户名</td>
      <td>
        <input type="text" name="username" onblur="check_user()">
        <span id='username'></span>
      </td>
    </tr>
    <tr>
      <td>密码</td>
      <td>
        <input type="password" name="pwd" onblur="check_pwd()">
        <button onclick="return showpwd()">显示密码</button>
        <span id='pwd'></span>
      </td>
    </tr>
    <tr>
      <td>确认密码</td>
      <td><input type="password" name="repwd" onblur="check_repwd()">
      <span id='repwd'></span>
      </td>
    </tr>
    <tr>
      <td>手机号</td>
      <td>
        <input type="text" name="tel" onblur="check_tel()">
        <span id='tel'></span>
      </td>
      </tr>
      <tr>
        <td>验证码</td>
        <td>
          <input type="code" name="code">
          <button onclick="return reflush()">刷新验证码</button>
          <span id='code'></span>
        </td>
      </tr>
    </table>
    <input type="checkbox" name="agree">我已阅读并同意 <br>
    <button id="btn" onclick="return checkall()">立即注册</button>
  </form>
</center>
</html>
<script>
// 验证码
  window.onload=function(){
    reflush();
  }
  function reflush(){
    var randnum = 1000+Math.floor(Math.random()*9000)
    document.getElementById('code').innerHTML=randnum;
    return false;
  }
// 显示密码
  function showpwd(){
    node = document.getElementsByName('pwd')[0];
    node.type = "text";
    return false;
  }
// 验证用户名
  function check_user() {
    var username = document.getElementsByName('username')[0].value;
    var ptn_username = /^[(\u4e00-\u9fa5)||\w]{6,10}$/i;
    if (!username.match(ptn_username)) {
      document.getElementById('username').innerHTML='用户名格式不正确';
      return false;
    }
    document.getElementById('username').innerHTML='';
    return true;
  }
// 验证密码
  function check_pwd() {
    var pwd = document.getElementsByName('pwd')[0].value;
    var ptn_pwd = /^\w{6,10}$/i;
    if (!pwd.match(ptn_pwd)) {
      document.getElementById('pwd').innerHTML='密码格式不正确';
      return false;
    }
    document.getElementById('pwd').innerHTML='';
    return true;
  }
// 两次密码一致
  function check_repwd(){
    var pwd = document.getElementsByName('pwd')[0].value;
    var repwd = document.getElementsByName('repwd')[0].value;
    if (pwd!=repwd) {
      document.getElementById('repwd').innerHTML='两次密码不一致';
      return false;
    }
    document.getElementById('repwd').innerHTML='';
    return true;
  }
// 验证手机号
  function check_tel() {
    var tel = document.getElementsByName('tel')[0].value;
    var ptn_tel = /^1[35789]\d{9}$/i;
    if (!tel.match(ptn_tel)) {
      document.getElementById('tel').innerHTML='手机号格式不正确';
      return false;
    }
    document.getElementById('tel').innerHTML='';
    return true;
  }
// 阅读协议
  function check_agree(){
    var flag = document.getElementsByName('agree')[0].checked;
    if(!flag){
      alert('请先阅读注册说明书');
    }
    return flag;
  }

// 刷新产生验证码
  function check_code(){
    var code = document.getElementsByName('code')[0].value;
    var span_code = document.getElementById('code').innerHTML;
    if (!code) {
      alert('请点击刷新生成验证码')
    }
    if (code!=span_code) {
      alert('验证码不正确')
      return false;
    }
    return true;
  }

// 表单提交
  function checkall(){
    var check = check_code()&&check_user()&&check_pwd()&&check_repwd()&&check_tel()&&check_agree();
    return check;
  }
</script>

原始js---JavaScript注册用正则验证用户名密码手机号邮箱验证码的更多相关文章

  1. Ajax实现注册无刷新验证用户名是否存在

    1. [代码][JavaScript]代码     ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ...

  2. 模拟js中注册表单验证

    示例1 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...

  3. 记录下 js各种证件的正则验证

    身份证 /(^\d{15}$)|(^\d{17}([0-9]|X)$)/    护照 /^[a-zA-Z0-9]{3,21}$/   /^(P\d{7})|(G\d{8})$/    军官证或士兵证 ...

  4. Javascript 正则验证带 + 号的邮箱地址

    很多邮箱地址是可以加上 + 加号为同一个邮箱地址. 比如 Gmail. 如果需要验证带 + 号的邮箱,如下: str = "65485+55@gmail.com"; documen ...

  5. php ajax 同时验证 用户名 密码

    今天写了一个程序分享给大家,该程序是ajax密码和用户名验证问题 第一步 先在数据库里建立一张表 有3个字段 为 id name pass 第二步 写html页面,需要引入jq库 请到官网自行下载 & ...

  6. java在线聊天项目 客户端登陆窗口LoginDialog的注册用户功能 修改注册逻辑 增空用户名密码的反馈 增加showMessageDialog()提示框

    LoginDialog类的代码修改如下: package com.swift.frame; import java.awt.EventQueue; import java.awt.event.Acti ...

  7. ajax异步验证用户名密码,提示路径错误

    使用thinkphp框架异步验证用户名和密码的时候,ajax路径错误可能有多重情况.我遇到的是,我自感路径没问题,且先前使用无错.由于多人合作使用svn,所以在更新代码后,使用firebug显示一直是 ...

  8. javaweb从mysql中获取数据验证用户名密码成功跳转,失败重新验证

    要求:validate.jsp页面中获取请求参数(request.getparameter(“name属性的值”)),注意中文参数获取之前要设置请求编码(request.setCharaterEnco ...

  9. 04 . Go+Vue开发一个线上外卖应用(用户名密码和图形验证码)

    图形化验证码生成和验证 功能介绍 在使用用户名和密码登录功能时,需要填写验证码,验证码是以图形化的方式进行获取和展示的. 验证码使用原理 验证码的使用流程和原理为:在服务器端负责生成图形化验证码,并以 ...

随机推荐

  1. django实战(四)--修改数据

    这节我们实现修改数据的功能,惯例,还是先上代码: urls.py urlpatterns=[ path('curd/edit/',views.curd_edit,name='curdedit'), p ...

  2. Python '\r', '\n', '\r\n' 的彻底理解

    回车和换行的历史: 机械打字机有回车和换行两个键作用分别是: 换行就是把滚筒卷一格,不改变水平位置.   (即移到下一行,但不是行首,而是和上一行水平位置一样) 回车就是把水平位置复位,不卷动滚筒.  ...

  3. Peewee之playhouse中的数据库连接池

    参见 http://note.youdao.com/noteshare?id=104255d91b5a00d716a713ae36e911fd 目前在学习Python库的源码,这是第二篇,比较简单的功 ...

  4. 【leetcode-148】排序链表

    在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序. 示例 1: 输入: 4->2->1->3输出: 1->2->3->4示例 2: 输入: ...

  5. Oracle数据库触发器

    第一次写触发器,浪费了一个小时,少了一个;编译不通过 当A表有更新或插入数据时,则触发器执行向B表插入对应条件的数据1 CREATE OR REPLACE TRIGGER Test -- 触发器名称 ...

  6. K8S CoreDNS部署失败,发现的一个问题

    K8S CoreDNS部署失败,查看错误日志,提示如下 root >> kubectl get all --all-namespaces -o wide root >> kub ...

  7. .Net Core 给WebApi接口返回值添加全局的日期格式化

    public void ConfigureServices(IServiceCollection services) { services.AddMvc().AddJsonOptions(option ...

  8. 2019 浩德钢圈java面试笔试题 (含面试题解析)

      本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.浩德钢圈等公司offer,岗位是Java后端开发,因为发展原因最终选择去了浩德钢圈,入职一年时间了,也成为了面 ...

  9. HTML Web Workers

    Web worker 是运行在后台的 JavaScript,不会影响页面的性能. 什么是 Web Worker? 当在 HTML 页面中执行脚本时,页面是不可响应的,直到脚本已完成. Web work ...

  10. Width Height -- (2)

    上回说到,宽高对于块级元素和行内元素发生的改变,结果是块级元素会接受宽高属性所发生的改变的,而行内元素不接受宽高属性所发生的改变. 但是,事无绝对 —— CSS属性display 通过上回进行的测试我 ...