纯JS实现的验证码-可自定义长度和字符

纯JS实现的验证码-可自定义长度和字符

纯JS实现的页面验证码-可自定义长度和验证码字符

生成验证码的函数

<script type="text/javascript">
var code;
function createCode() 
{
 code = "";
 var codeLength = 4; //验证码的长度
 var checkCode = document.getElementById("checkCode");
 var codeChars = new Array(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 charNum = Math.floor(Math.random() * 52);
  code += codeChars[charNum];
 }
 if(checkCode) 
 {
  checkCode.className = "code";
  checkCode.innerHTML = code;
 }
}
</script>

登录页面代码:

<body onload="createCode()">
<form id="form1" action="loginCheck.jsp" onsubmit="return validateCode()">
 <div>
  <table border="0" cellspacing="5" cellpadding="5" >
   <tr>
    <td>用户名:</td>
    <td><input type="text" name="username" id="username"></td>
    <td></td>
   </tr>
   <tr>
     <td>密 码:</td>
     <td><input type="text" name="pwd" id="pwd"></td>
     <td></td>
   </tr>
   <tr>
    <td>验证码:</td>
    <td><input style="float:left;" type="text"  id="inputCode" /></td>
    <td><div class="code" id="checkCode" onclick="createCode()" ></div><a href="#" onclick="createCode()">看不清换一张</a></td>
   </tr>
   <tr>
    <td></td>
    <td><input id="Button1"  type="submit" value="确定" /></td>
    <td></td>
   </tr>
  </table>
 </div>
</form>
</body>

检验验证码是否输入和输入是否正确的validateCode()函数代码:

function validateCode() 
{
 var inputCode=document.getElementById("inputCode").value;
 if(inputCode.length <= 0) 
 {
  alert("请输入验证码!");
  return false;
 }
 else if(inputCode.toUpperCase() != code.toUpperCase()) 
 {
   alert("验证码输入有误!");
   createCode();
   return false;
 }
 else 
 { 
  return true;
 }    
}

美化验证码CSS:

<style type="text/css">
.code 
{
 background:url(code_bg.jpg);
 font-family:Arial;
 font-style:italic;
 color:blue;
 font-size:18px;
 border:0;
 padding:2px 3px;
 letter-spacing:3px;
 font-weight:bolder;
 float:left;
 cursor:pointer;
 width:100px;
 height:18px;
 line-height:18px;
 text-align:center;
 vertical-align:middle;
}
a 
{
 text-decoration:none;
 font-size:12px;
 color:#288bc4;
}
a:hover 
{
 text-decoration:underline;
}
</style>





纯JS实现的验证码-可自定义长度和字符|www.125jz.com



用户名:
密 码:
验证码:

看不清换一张



125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/2767.html

(0)
江山如画的头像江山如画管理团队
上一篇 2018年10月2日 上午8:45
下一篇 2018年10月10日 下午2:48

99%的人还看了以下文章

  • JS实现开关效果,可单选和组选

    JS实现的checkbox开关效果,可单个打开开关,也可一次关闭所有或打开所有开关。 JS实现开关效果,可单选和组选|www.125jz.com

    2018年7月29日
    2.0K0
  • Marquee标签实现跑马灯、滚动公告、通知效果

    1.Marquee基本语法 <marquee> … </marquee> 实例演示:会移动的文字(Marquee) <marquee>啦啦啦,我会移动耶!</marquee> 2.文字移动属性 (1)方向 :direction=# #=left, right,up,down 例: <marqu…

    2019年2月26日
    7.7K0
  • 6个实例教你学会JavaScript的箭头函数

    在看别人JS代码时,经常会看到一些类似下面代码的箭头函数,如果你没有接触过箭头函数,估计要看晕了,这些都是什么东西?今天中国网页设计通过6个实例,教给大家掌握箭头函数的语法及使用。

    2018年2月17日
    2.0K0
  • CSS border-radius 深入学习(含可视化生成工具)

    没有学过CSS border-radius 的同学,请阅读《css实现圆角矩形、半圆、圆形效果—border-radius使用详解》一文。border-radius 写法: .box{ border-radius: 30%; /* 也可以用PX代替 */ } 矩形的四角会变为相应数值的圆角,如下图: 只输入一个数值,所有角都会被四舍五入,若要固定值可以使用 …

    2019年10月17日 网页制作
    2.1K0
  • 第5课:文本

    文本的显示格式与式样对于网页设计师来说是一个重要问题。这一课将向你介绍CSS在文本布局方面令人激动的特性。本课将对下列CSS属性进行讲解: text-indent text-align text-decoration letter-spacing text-transform 文本缩进[text-indent] CSS属性text-indent用于为段落设置…

    2020年2月22日
    2.2K0
  • 第2课:HTML是什么?

    HTML是什么? HTML是一门语言,它令我们可以在因特网上展示信息。你所看到的网页,是浏览器对HTML进行解释的结果。要查看一个网页的HTML代码,只需在浏览器菜单栏上点击“查看”,然后选择“源文件”即可。 对于生手来说,HTML代码看似很复杂,不过本教程将帮助你弄清楚它们的含义。 HTML能用来做什么? 如果你要制作网站的话,学习HTML是不可避免的。即…

    2018年1月20日
    3.2K0

发表回复

登录后才能评论