jquery 再次点击失效,验证码获取,第一次可以,第二次的时候点击就不能触发了
<scripttype="text/javascript">varwait="180";functionchangeTime(){if(wait>0){wait=wait...
<script type="text/javascript">
var wait="180";
function changeTime(){
if(wait > 0){
wait = wait - 1;
$("#getverify").val(wait+"秒后重新获取");
$("#getverify").attr("disabled","disabled");
}
if(wait == 0){
$("#getverify").val('重新获取验证码');
$("#getverify").removeAttr('disabled');
//当走到这里的时候 按钮再次点击就不能触发
return false;
}
}
$(document).ready(function(){
$("#getverify").bind("click",function(){
$telVal=$("#txtMobilePhone").val();
$ajax='ajax';
$.ajax({ type: "POST",
url: "",
data: "do="+$ajax+"&telVal="+$telVal,
success: function(msg){
if(msg=='222'){ setInterval(changeTime,1000); return false; }
if(msg=='111'){ alert("手机号已注册"); return false; }
if(msg="444"){ alert("手机格式有误"); return false; }
}
})
})
}) 展开
var wait="180";
function changeTime(){
if(wait > 0){
wait = wait - 1;
$("#getverify").val(wait+"秒后重新获取");
$("#getverify").attr("disabled","disabled");
}
if(wait == 0){
$("#getverify").val('重新获取验证码');
$("#getverify").removeAttr('disabled');
//当走到这里的时候 按钮再次点击就不能触发
return false;
}
}
$(document).ready(function(){
$("#getverify").bind("click",function(){
$telVal=$("#txtMobilePhone").val();
$ajax='ajax';
$.ajax({ type: "POST",
url: "",
data: "do="+$ajax+"&telVal="+$telVal,
success: function(msg){
if(msg=='222'){ setInterval(changeTime,1000); return false; }
if(msg=='111'){ alert("手机号已注册"); return false; }
if(msg="444"){ alert("手机格式有误"); return false; }
}
})
})
}) 展开
展开全部
亲,你分别把点击两次的wait弹出来看看,应该是第二次和以后点击的时候wait都一直等于0了。因为函数执行的是很快的,一瞬间wait=wait-1就会执行玩,也就是wait等于0,当然会一直执行这个条件if(wait == 0),也就是一直retun false当然点击就失效了。
更多追问追答
追问
我取消了那个
return false;
alert(wait) 就弹出1次 0
click点击了 时间没有在次显示 倒数重新发送。但是实际上却发送了
追答
你要在两个if里面都加上一个alert(wait),第一次应该执行上面的,上面的if只会执行一次,你应该写成
while(wait > 0){
wait = wait - 1;
$("#getverify").val(wait+"秒后重新获取");
$("#getverify").attr("disabled","disabled");
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询