优化验证码发送和验证

pull/463/MERGE
Karson 2024-04-02 16:18:31 +08:00
parent 0de3858c90
commit 7898b811b2
2 changed files with 11 additions and 5 deletions

View File

@ -8,7 +8,7 @@
<div class="input-group">
<input type="text" name="captcha" class="form-control" data-rule="required;length({$Think.config.captcha.length})" />
<span class="input-group-btn" style="padding:0;border:none;">
<img src="{:captcha_src()}" width="107" height="32" onclick="this.src = '{:captcha_src()}?r=' + Math.random();"/>
<img src="{:captcha_src()}" width="107" height="32" class="captcha-img" onclick="this.src = '{:captcha_src()}?r=' + Math.random();"/>
</span>
</div>
<span class="msg-box n-right" style="left:0;top:33px;text-align: left;" for="captcha"></span>

View File

@ -2,7 +2,7 @@ define(['fast', 'template', 'moment'], function (Fast, Template, Moment) {
var Frontend = {
api: {
//发送验证码
sendcaptcha: function (btn, type, data, callback) {
sendcaptcha: function (btn, type, data, success, error) {
$(btn).addClass("disabled", true).text("发送中...");
var si = {};
Frontend.api.ajax({url: $(btn).data("url"), data: data}, function (data, ret) {
@ -17,11 +17,15 @@ define(['fast', 'template', 'moment'], function (Fast, Template, Moment) {
$(btn).addClass("disabled").text(seconds + "秒后可再次发送");
}
}, 1000);
if (typeof callback == 'function') {
callback.call(this, data, ret);
if (typeof success == 'function') {
success.call(this, data, ret);
}
}, function () {
}, function (data, ret) {
$(btn).removeClass("disabled").text('发送验证码');
if (typeof error == 'function') {
error.call(this, data, ret);
}
});
},
//准备验证码
@ -39,6 +43,8 @@ define(['fast', 'template', 'moment'], function (Fast, Template, Moment) {
data.captcha = $("input[name=captcha]", form).val();
Frontend.api.sendcaptcha(btn, type, data, function (data, ret) {
Layer.close(index);
}, function (data, ret) {
$("img.captcha-img", form).trigger("click");
});
return true;
}