用JS实现网页验证码功能

验证码

作用:验证使用网页的用户是否为机器人。
验证码一般有两种
1.纯数字组成的验证码
2.数字和字母结合的验证码

纯数字组成的验证码基本不用,因为很容易被破解

纯数字组成的验证码
首先我们编写一个函数,函数的作用是随机生成n位纯数字验证码,代码如下。

function numTestCode(n){//参数n代表我要生成n位验证码,每一位数字的范围是0-9的整数
	var arr=[];//存储生成的数字
	for(var i=0;i<n;i++){
		arr[i]=parseInt(Math.random()*10)//生成0-9之间的随机整数,并将每个随机整数存入数组arr
	}
	return arr.join("")//将数组中的各个元素拼接成一个字符串并作为函数的返回值。
}
			

数字和字母组合的验证码
同样编写函数,函数的作用随机生成n位数字和字母结合的验证码,代码如下。

function  testCode(n){
	var arr=[];
	for(var i=0;i<n;i++){
		var num=parseInt(Math.random()*123);//随机生成0到122里面的整数
		if(num>=0&&num<=9){//判断是否为0-9里面的整数
			arr.push(num);
		}else if(num>=97&&num<=122||num>=65&&num<=90){//判断是否为大小写字母,判断依据为ASCII码值。
			arr.push(String.fromCharCode(num));
		}
		else{//判断无效数字,则减去循环的次数。
			i--;
		}
	}
	return arr.join("");
}

html页面
完成一个简单的html页面,也可以css美化一下,这里就不去做了

<body>
	<div id="div1">
		000000
	</div>
	<button onclick="btnClick();">获取验证码</button>
</body>

如何点击获取验证码就刷新验证码呢?这里需要去写一个事件驱动函数

function btnClick(){
	var oDiv=document.getElementById("div1");//获取html页面中id为div1标签
	oDiv.innerHTML=testCode(6);//将之前写好的函数直接调用返回值赋给div1标签下
}
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值