JavaScript使用Math.random()生成简单的验证码


Posted in Javascript onJanuary 21, 2019

第一种:单纯的纯数字验证码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>js验证码</title>
</head>
<body>
<div class="yzm" style="width: 20%;height: 300px;text-align: center;background-color: pink;line-height: 200px;"></div>
</body>
</html>
<script>
  window.onload = function () {
    var yzm=document.querySelector(".yzm");
    //页面一加载完成就生成随机数调用rand()
    yzm.innerHTML=rand(5);
    //点击切换随机码
    yzm.onclick=function() {
      var num = rand(5);
      this.innerHTML = num;
    };
    //生成随机码
    function rand(number){
   //用来存储产生的随机数
    var num="";
      for(var i=0;i<number;i++){
        num+=Math.floor(Math.random()*10)
      }
      return num;
    }
  }
</script>

第二种:输入的验证码与生成的验证码进行校验(数字与字母相结合)

<html>
<head>
  <meta charset="UTF-8">
  <title>验证码</title>
  <style type="text/css">
    #code
    {
      font-family:Arial;
      font-style:italic;
      font-weight:bold;
      border:0;
      letter-spacing:2px;
      color:blue;
    }
  </style>
</head>
<body>
<div>
  <input type = "text" id = "input"/>
  <input type = "button" id="code" onclick="createCode()"/>
  <input type = "button" value = "验证" onclick = "validate()"/>
</div>
</body>
</html>
<script>
  var code ; //在全局定义验证码
  var number = 5;//验证码生成的个数
  var checkCode = document.getElementById("code");
  //产生验证码(页面一加载就生成)
  window.onload = function (){
    createCode();
  };
  //产生验证码(输入错误的时候刷新验证码,函数调用)
  function createCode(){
    code = "";
    var codeLength = number;//验证码的长度
//    var checkCode = document.getElementById("code");
    var random = [0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R',
      'S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r',
      's','t','u','v','w','x','y','z'];//随机数
    for(var i = 0; i < codeLength; i++) {//循环操作
      var index = Math.floor(Math.random()*random.length);//取得随机数的索引(random.length)
      code += random[index];//根据索引取得随机数加到code上
    }
    checkCode.value = code;//把code值赋给验证码
  }
  //校验验证码
  function validate(){
    var inputCode = document.getElementById("input").value.toUpperCase(); //取得输入的验证码并转化为大写
    if(inputCode.length <= 0) { //若输入的验证码长度为0
      alert("请输入验证码!"); //则弹出请输入验证码
    } else if(inputCode != code.toUpperCase() ) { //将随机产生的验证码转化为大写,若输入的验证码与产生的验证码不一致时
      alert("验证码输入错误!@_@"); //则弹出验证码输入错误
      createCode();//刷新验证码
      document.getElementById("input").value = "";//清空文本框
    }
    else { //输入正确时
      alert("正确^-^"); //弹出^-^
    }
  }
</script>

若有不足请多多指教!希望给您带来帮助!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Javascript 相关文章推荐
jquery遍历input取得input的name
Apr 27 Javascript
JavaScript新窗口与子窗口传值详解
Feb 11 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
Jun 26 Javascript
JS实现超简单的鼠标拖动效果
Nov 02 Javascript
jQuery实现公告新闻自动滚屏效果实例代码
Jul 14 Javascript
jQuery选择器实例应用
Jan 05 Javascript
js 作用域和变量详解
Feb 16 Javascript
通过npm引用的vue组件使用详解
Mar 02 Javascript
jquery实现自定义图片裁剪功能【推荐】
Mar 08 Javascript
js原生方法被覆盖,从新赋值原生的方法
Jan 02 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
Jun 06 Javascript
基于Angularjs-router动态改变Title值的问题
Aug 30 Javascript
详解一个基于react+webpack的多页面应用配置
Jan 21 #Javascript
js中对象和面向对象与Json介绍
Jan 21 #Javascript
详解vuex中action何时完成以及如何正确调用dispatch的思考
Jan 21 #Javascript
JavaScript常用事件介绍
Jan 21 #Javascript
JavaScript使用闭包模仿块级作用域操作示例
Jan 21 #Javascript
JavaScript闭包与作用域链实例分析
Jan 21 #Javascript
js中事件对象和事件委托的介绍
Jan 21 #Javascript
You might like
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
2013/05/10 PHP
php去除换行(回车换行)的三种方法
2014/03/26 PHP
PHP获取当前页面URL函数实例
2014/10/22 PHP
php类中的各种拦截器用法分析
2014/11/03 PHP
浅析php适配器模式(Adapter)
2014/11/25 PHP
Yii框架中memcache用法实例
2014/12/03 PHP
PHP会员找回密码功能的简单实现
2016/09/05 PHP
用JavaScript事件串连执行多个处理过程的方法
2007/03/09 Javascript
JavaScript XML实现两级级联下拉列表
2008/11/10 Javascript
基于mootools 1.3框架下的图片滑动效果代码
2011/04/22 Javascript
js事件冒泡实例分享(已测试)
2013/04/23 Javascript
JQuery插件fancybox无法在弹出层使用左右键的解决办法
2013/12/25 Javascript
jquery实现公告翻滚效果
2015/02/27 Javascript
jquery+html5烂漫爱心表白动画代码分享
2015/08/24 Javascript
基于jQuery实现仿QQ空间送礼物功能代码
2016/05/24 Javascript
BootStrap使用file-input插件上传图片的方法
2016/09/05 Javascript
浅谈js之字面量、对象字面量的访问、关键字in的用法
2016/11/20 Javascript
bootstrap滚动监控器使用方法解析
2017/01/13 Javascript
基于JS代码实现简单易用的倒计时 x 天 x 时 x 分 x 秒效果
2017/07/13 Javascript
解决Vue @submit 提交后不刷新页面问题
2020/07/18 Javascript
python调用java的Webservice示例
2014/03/10 Python
Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法
2016/07/01 Python
python opencv检测目标颜色的实例讲解
2018/04/02 Python
python Spyder界面无法打开的解决方法
2018/04/27 Python
Anaconda 离线安装 python 包的操作方法
2018/06/11 Python
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
Tensorflow中使用tfrecord方式读取数据的方法
2018/06/19 Python
PyCharm2018 安装及破解方法实现步骤
2019/09/09 Python
一级方程式赛车官方网上商店:F1 Store(支持中文)
2018/01/12 全球购物
英文翻译的自我评价语句
2013/10/04 职场文书
2014超市双十一活动策划方案
2014/09/29 职场文书
党员群众路线整改措施及今后努力方向
2014/10/28 职场文书
优质护理心得体会
2016/01/22 职场文书
职业规划从高考志愿专业选择开始
2019/08/08 职场文书
JavaWeb Servlet开发注册页面实例
2022/04/11 Java/Android
基于redis+lua进行限流的方法
2022/07/23 Redis