案例字母数字验证码并验证验证码

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title></title>
</head>

<body>
    <form action="">
        <table width="449" height="530" border="1" align='center'>
            <tr>
                <td colspan="2" align="center">用户名注册</td>
            </tr>
            <tr>
                <td width="116" align="right">姓名:</td>
                <td width="323"><label>
		  <input type="text" name="" id="name" />
		</label></td>
            </tr>
            <tr>
                <td width="116" align="right">性别:</td>
                <td width="323"><label>
		  <input type="radio" name="sex" id="" />男
		   <input type="radio" name="sex" id="" />女
		</label></td>
            </tr>
            <tr>
                <td align="right">年龄:</td>
                <td><label>
		  <input type="text" name="" id="age" />
		</label></td>
            </tr>
            <tr>
                <td align="right">密码:</td>
                <td><label>
		  <input type="password" name="" id="pwd" />
		</label></td>
            </tr>
            <tr>
                <td align="right">确认密码:</td>
                <td><label>
		  <input type="password" name="" id="qpwd" />
		</label></td>
            </tr>
            <tr>
                <td align="right">手机:</td>
                <td><label>
		  <input type="text" name="" id="tel" />
		</label></td>
            </tr>
            <tr>
                <td align="right">QQ:</td>
                <td><label>
		  <input type="text" name="" id="qq" />
		</label></td>
            </tr>
            <tr>
                <td align="right">邮箱:</td>
                <td><label>
		  <input type="text" name="" id="email" />
		</label></td>
            </tr>
            <tr>
                <td align="right">邮编:</td>
                <td><label>
		  <input type="text" name="" id="eml" />
		</label></td>
            </tr>
            <tr>
                <td align="right">身份证:</td>
                <td><label>
		  <input type="text" name="" id="sname" />
		</label></td>
            </tr>
            <tr>
                <td align="right">验证码:</td>
                <td><label>
		  <input type="text" id="inp"/>
		  <span id="checkCode" style=" background:url(images/1.jpg) -10px -15px;width:80px;font-style: italic; height: 20px;border: 1px solid black;display: inline-block;"></span>
		  <a href="javascript:;" id="btn1">看不清</a>
		</label></td>
            </tr>
            <tr>
                <td align="right">爱好:</td>
                <td><label>
		<input type="checkbox" name="a" id="c1">
		足球
		<input type="checkbox" name="a" id="c2">
		篮球
		<input type="checkbox" name="a" id="c3">
		排球
		<input type="checkbox" name="a" id="c4">
		网球
		</label></td>
            </tr>
            <tr>
                <td height="36" colspan="2" align="center"><label>
		  <input type="submit" value="注册" id="btn2"/>
		</label></td>
            </tr>
        </table>
    </form>
</body>

</html>
<script src="public.js"></script>
<script type="text/javascript">
    //由 字母 或 数字组成的验证码
    //  从 48--122 之间   ,随机获取一个整数  ,
    //  如果 这个随机整数在 58--64 或  91--96之间,说明不是数字或字母, 就重新抽取一个新的code值
    //  如果这个随机正则 不在58--64 或  91--96之间,说明是数字或字母,转成对应字符  进行字符串拼接

    var inp = document.getElementById("inp");
    var checkCode = document.getElementById("checkCode");
    var btn1 = document.getElementById("btn1");
    var btn2 = document.getElementById("btn2");
    checkCode.innerHTML = getYZM(6);
    btn1.onclick = function() {
        checkCode.innerHTML = getYZM(6);
    }
    btn2.onclick = function() {
        if (inp.value <= 0) {
            alert("请输入验证码");
        } else if (inp.value != checkCode.innerHTML) {
            alert("输入错误,请重新输入");
            checkCode.innerHTML = getYZM(6);
        } else {
            alert("ok");
        }
    }
</script>

public.js

//获取id
function $id(id){
	return document.getElementById(id);
}
//获取某个范围之间的随机整数
function getRand(startNum,endNum){
	return parseInt(Math.random()*(endNum-startNum+1) + startNum);
}

//随机获取六位十六进制颜色值
function getRandColor(){
	var colorCh = "0123456789abcdef";
	var str = "#";
	for (var i = 0; i < 6; i++) {
		var index = getRand(0,15);
		str += colorCh.charAt(index);
	}
	console.log(str);
	return str;
}
//随机获取num位数字验证码
function getYZM(num){
		var yzm = "";
		// Ad76
		//var ch = String.fromCharCode(iii);
		for (var i = 0; i < num; i++) {
			var randAS = getRand(48,122);
			if((randAS >= 48 && randAS <= 57) || (randAS >= 65 && randAS <= 90) || (randAS >= 97 && randAS <= 122) ){
				var ch = String.fromCharCode(randAS);
				yzm += ch;
			}else{
				i--;
			}
		}
		return yzm
	}
//获取这种格式的日期:2018年X月X日 00:00:00 星期X
function dateToString(date){
	//2018年X月X日 00:00:00 星期X
	// y/m/d h:M:s
	var week = ["星期天","星期一","星期二","星期三","星期四","星期五","星期六"]
	
	var dateStr = "";
	var y = date.getFullYear();
	var m = date.getMonth()+1;
	var d = date.getDate();
	var w = date.getDay();
	var h = date.getHours();
	var M = date.getMinutes();
	var s = date.getSeconds();
	
	dateStr += y+"年"+getDB(m)+"月"+getDB(d)+"日" 
	dateStr += " " + getDB(h) + ":" + getDB(M) + ":" + getDB(s);
	dateStr += " " + week[w];
	return dateStr;
}

function getDB(num){
	return num < 10 ? "0" + num : num;
}

//获取两个时间的时间差,返回是一个秒数。
function getTimeDif(startTime,endTime){
	return (endTime.getTime() - startTime.getTime())/1000;
}

猜你喜欢

转载自blog.csdn.net/qq_38068491/article/details/82991592