用js如何获取验证码的值?

用js如何获取验证码的值?,第1张

验证码在我们的后台代码生成,也就是在java代码里生成。然后在页面上显示出来,当用户输入验证码后再检验用户输入的验证码是否和后台生成的验证码相同,比较的时候可以通过ajax去比较,坚决反对用个隐藏域来保存后台生成的验证码,因为这样很容易被攻击

<script>
function chk(){

}
</script>
<form action="resultasp" method="post" onSubmit="return chk()">

</form>
chk()函数为验证函数,当符合提交条件时return true;当不符合时return false

我们一般是后端语言生成随机验证码的流,并记录当前生成的数值。前台就直接用img元素显示这个流,等用户提交后,就判断用户填写的验证码是否跟后台记录的数值相同,这个 *** 作一般不需要javascript来处理。涉及到安全方面的东西,我们一般不用javascript来实现。

code 是一个字符串,
selectChar 是一个数组。里面的值是2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','J','K','L','M','N','P','Q','R','S','T','U','V','W','X','Y','Z'
charIndex 这个是0~31的随机数,
通过循环把数组里的随机下标charIndex的元素拼接成字符串。
循环次数由codeLength决定。

<html>
<head>
<script language="javascript" type="text/javascript">
var code ;
function createCode(){
code = new Array();
var codeLength = 4;
var checkCode = documentgetElementById("checkCode");
checkCodevalue = "";
var selectChar = new Array(2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','J','K','L','M','N','P','Q','R','S','T','U','V','W','X','Y','Z');
for(var i=0;i<codeLength;i++) {
var charIndex = Mathfloor(Mathrandom()32);
code +=selectChar[charIndex];
}
checkCodevalue = code;
}
function validate () {
var inputCode = documentgetElementById("yzm")valuetoUpperCase();
if(inputCode != code ){
alert("验证码错误!");
return false;
}
else {
alert("验证码正确!");
return true;
}
}
</script>
<meta >

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12814499.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存