js随机生成字母和数字组合的6位验证码,点击看不清刷新出新的验证码。

tech2022-07-08  191

/* 需求分析: 1 页面打开以后,直接在id是yz的标签里面显示6位的验证码 ==>验证码:数字(编码48-57),大写字母(编码65-90),小写字母(编码97-122 2 点击id是btn的标签,重新生成一个6位的验证码,并显示在yz标签里面 技术点: 如果希望js代码在页面加载完成以后再执行,可以使用onload事件 */ //布局 <form action=""> <table border="1" align='center'> <td align="right">验证码:</td> <td><label> <input type="text" /> <span id="yz" style=" background:url(1.png) -10px -15px;width:80px; font-style: italic; height: 20px;border: 1px solid black; display: inline-block;"></span> <a href="javascript:;" id='btn'>看不清</a> </label></td> </tr> </table> </form> <script> //生成一个n到m之间的随机整数 function rand(n,m){ return n+parseInt(Math.random()*(m-n+1)); } //传入元素id,返回指定id元素 function $id(id){ return document.getElementById(id) } //生成验证码 function showCode() { var code = ""; for (var i = 0; i < 6; i++) { //先让生成的编码在最大的范围里 var num = rand(48, 122); //再用条件剔除不符合的部分 if ((num > 58 && num < 65) || (num > 90 && num < 97)) { //i--是为了让这个数重新循环得到(因为不符合就倒退一步重新生成) i--; } else { //num是编码 要变成编码对应的字符串显示 code += String.fromCharCode(num); } } //将得到的code在指定的位置显示 id为yz // document.getElementById("yz").innerHTML = code; $id('yz').innerHTML = code; } window.onload = function () { showCode(); // document.getElementById("btn").onclick = showCode; $id("btn").onclick = showCode; } </script>

结果:

点击看不清可以刷新验证码

最新回复(0)