js实现输入手机验证码后点击提交按钮验证手机输入的验证码和发送的验证码是否一致

JavaScript016

js实现输入手机验证码后点击提交按钮验证手机输入的验证码和发送的验证码是否一致,第1张

这个不能使用js来做,js属于客户端脚本,手机验证码不能通过任何方式显示到前端,所以js不能来做校验

实现方案是,点击获取验证码,发送手机号到服务端,服务端通过短信平台网关接口发送验证码;用户接收到验证码,输入验证码,然后将手机号和验证码同时提交到服务端,由服务端进行验证,并返回是否验证通过

整个过程中验证码并未出现在前端

首先关于手机号长度可以使用js判断用户输入长度,如果不等于11位可以进行相关提示,具体可参考以下代码

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>标题</title>

<script type="text/javascript">

window.onload=function(){

var aIpt = document.getElementsByTagName('input')

aIpt[1].onclick=function(){

if((aIpt[0].value).length==11){

alert("您输入的长度是11位")

}

else{

alert("请进行正确的输入")

}

}

}

</script>

</head>

<body>

<input type="text" placeholder="请输入11位数字" name="">

<input type="button" value="跳转" name="">

</body>

</html>

判断用户输入的是不是数字,可以使用isNaN进行判断,具体可以参考以下代码

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>标题</title>

<script type="text/javascript">

window.onload=function(){

var aIpt = document.getElementsByTagName('input')

aIpt[1].onclick=function(){

if((aIpt[0].value).length==11&&isNaN(aIpt[0].value)==false){

alert("您输入的长度是11位")

}

else{

alert("请进行正确的输入")

}

}

}

</script>

</head>

<body>

<input type="text" placeholder="请输入11位数字" name="">

<input type="button" value="跳转" name="">

</body>

</html>

前面的代码作为判断长度的单独展示,后面的代码,可以完整的展示限制长度和判断数字