btn-captcha 点击后如何传参的
看了form data是传了event 和 mobile,这是在哪里传的进来的呢,原来是
D:\2.work\fastadmin\1.2.0.20201008_full\public\assets\js\frontend.js
定义了类名为btn-captcha的点击事件
$(document).on("click", ".btn-captcha", function (e)
在这个事件里,会调用Frontend.api.sendcaptcha,里面的data参数就定义了event 和 mobile
element.isValid(function (v) {
if (v) {
var data = {event: $(btn).data("event")};
data[type] = element.val(); //type的值为mobile
Frontend.api.sendcaptcha(btn, type, data);
} else {
Layer.msg("请确认已经输入了正确的" + text + "!");
}
});
如果还要传其他值,就要改造上面这里
element.isValid(function (v) {
if (v) {
var data = { event: $(btn).data("event") };
data[type] = element.val();
//begin add by astonish 20201208 增加mycaptcha到form表单里
var mycaptcha_name = $(btn).data("mycaptcha");
if (mycaptcha_name != null && mycaptcha_name != undefined) {
var mycaptcha = $("input[name='" + mycaptcha_name + "']");
data["mycaptcha"] = mycaptcha.val();
}
//end add by astonish 20201208
data[type] = element.val();
Frontend.api.sendcaptcha(btn, type, data);
} else {
Layer.msg("请确认已经输入了正确的" + text + "!");
}
});
html这样,表示从input name 为mycaptcha的控件取值 传递到后台去
<a href="javascript:;" class="btn btn-info btn-captcha" data-mycaptcha="mycaptcha" data-url="{:url('api/sms/send')}" data-type="mobile" data-event="changemobile">获取验证码</a>