怎么样才能先通过文字验证码,然后才进行手机号码验证?
我想实现必须先进行文字验证码验证,然后进行手机号码验证,就像下面这样的,应该怎么做?
代码:
<div class="form-group">
<div class="col-md-12">
<div class="input-group">
<span class="input-group-addon" id="basic-addon2">验证码</span>
<input name="verify" class="form-control" placeholder="请输入右边的验证码" type="text">
<span class="input-group-btn">
<img id='tpvercod' height="30" alt="验证码" src="{:U('Index/User/verifyImg',array())}" title="点击刷新">
</span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-12">
<div class="input-group">
<span class="input-group-addon" id="basic-addon1">手机号</span>
<input type="tel" name="user_mobi" id="user_mobi" value="" class="form-control" placeholder="请输入手机号" aria-describedby="basic-addon1" required="" autofocus="" />
<span class="input-group-btn">
<input id="btnGetVerCod" type="button" class="form-control btn btn-info pull-right" value="获取验证码">
</span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-12">
<div class="input-group">
<span class="input-group-addon" id="basic-addon2">请输入</span>
<input type="text" name="vercod" id="vercod" value="" class="form-control" placeholder="请输入手机收到的验证码" />
</div>
</div>
</div>
用了keyup后,每个字符都触发了ajax提交,应该怎么破~~~
$("#txtverify").keyup(function() {
var v_txt_ver_cod = $("#txtverify").val();
$.ajax({
url: "{:U('User/rcvTxtVerCod')}",
data: {
txt_ver_cod: v_txt_ver_cod,
},
type: "POST",
dataType: "json",
success: function(JSON) {
console.log(JSON);
if (JSON.result == "N") {
alert('N');
} else {
if (JSON.result == "Y") {
console.log(JSON);
}
}
},
error: function(xhr, status, errorThrown) {
console.log("keyup err");
console.log(status);
}
}); //ajax end here
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
非常感谢您邀请我回答,不过5楼的回答比较符合你的需求了,js代码怎么写就要看你选择jQuery还是angularjs了。
手机号获取验证码的那个先
disable
。给验证码的的那个input.text
添加一个onChange
或者onKeyUp
(看你想要的效果自行选择,个人觉得的keyUp比较好,但是js写的比较复杂)事件,在这个事件里把用户输入的验证码发送Ajax到后台验证,验证成功再enable
获取手机验证码的按键。至于防止脚本在通过图形验证码之后才能获取手机验证码那就是后台的逻辑的问题了。
把每一步验证都写成一个函数,第一个函数验证成功则继续往下执行下一个验证,一直到最后一个则说明验证成功
点获取验证码的时候, 向服务器发送请求, 服务器开始验证'验证码'和'手机号码', 如果'验证码'通过, 再验证'手机号码', 发送手机短信
如果'验证码'不通过, 直接返回错误信息
做一个判断吧,如果文字验证码验证成功,点击手机获取验证码才会发出请求,不然就错误提示,请填写上面的验证码,并把焦点放在上面
可以先把获取手机验证码按钮设置成不可点击,等文字验证码通过了才可以点击手机验证码