jquery ajax的success回呼函數中實現按鈕置灰倒計時_jquery

來源:互聯網
上載者:User
主要是實現非同步手機傳送簡訊成功之後在ajax的success回調中實現將發送按鈕置灰並倒計時,剛開始一直報js錯誤,問題可能出在於調用ajax之後this被更新,隨意在這之前先把this對象賦給一個變數就沒問題

按鈕倒計時代碼
複製代碼 代碼如下:

var wait = 60;
get_code_time = function (o) {
if (wait == 0) {
o.removeAttribute("disabled");
o.value = "免費擷取驗證碼";
wait = 60;
} else {
o.setAttribute("disabled", true);
o.value = "(" + wait + ")秒後重新擷取";
wait--;
setTimeout(function() {
get_code_time(o)
}, 1000)
}
}

擷取手機簡訊之後調用get_code_time函數代碼
複製代碼 代碼如下:

//重新擷取驗證碼
$('#codeagain').click(function() {
var o = this;
$.ajax({
url:"Tea_sendCode.action?jsoncallback=?",
type:"post",
data: {accountId:accountId},
dataType: "json",
success: function (data) {
if(data.status == 1 && data.code == 200){
alert("驗證碼已發送至您的手機");
get_code_time(o);
} else {

if(data.msg != ""){
alert(data.msg);
} else {
alert("簡訊驗證碼發送失敗");
}
}
},
error: function (data) {
if(data.status == 0) {
alert(data.msg);
} else {
alert("簡訊驗證碼發送失敗");
}
}
});
});
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.