【发布时间】:2020-01-13 22:33:36
【问题描述】:
在我的网站中添加一个recaptcha 之前,我有一个表单用于用户将所有用户输入发布到我的数据库中。但是,如果有一个字段仍然为空或值为 0,我禁用了提交按钮。我使用 jQuery 来完成此操作
我尝试过类似使用 val() 方法来捕捉 recaptcha valeu 但似乎不起作用。
这是我的 jQuery 在检查所有字段后启用或禁用它:
$('#identity-next').attr('disabled', true); //disable the button
function checkFilled() {
$('form').on('keyup change', function () {
if ($(name).val() != ""
&& $(birth_place).val() != 0
&& $(birth_date).val() != ""
&& $(email).val() != ""
&& $(phone_number).val() != ""
&& $(address_province).val() != 0
&& $(address_regency).val() != 0
&& $(address_district).val() != 0
&& $(specify_address).val() != 0
&& $(captcha).val() != "") // the one that's not working {
$('#identity-next').attr('disabled', false); return true;
}
else {
$('#identity-next').attr('disabled', true);
return false;
}
});
}
checkFilled() //call the function
这是我的验证码 div:
<div id="captcha" name="g-recaptcha" class="g-recaptcha"
data-sitekey="########################">
</div>
{!! NoCaptcha::renderJs() !!}
<span class="text-danger">{{ $errors->first('g-recaptcha-response') }}
</span>
所以我希望我的 jquery 函数能够处理相同的功能以在所有字段不为空时启用提交按钮,包括我的 recaptcha,我正在使用 recaptcha V2 btw。在这种情况下,我的按钮将保持禁用状态,因为验证码根本不返回任何值(?)。
最好的问候!
【问题讨论】:
-
您使用的是哪个 reCAPTCHA 版本?
-
我看到是V2版本。请问&&
$(captcha).val() != "")中变量captcha的值是多少? -
它不起作用的一个原因是因为您在该行上添加了注释,这反过来又使
if语句的左大括号也变成了注释。&& $(captcha).val() != "") // the one that's not working { -
我在这个网站的问题中添加了评论,而不是在我的实际代码中
-
好的,请看下面我的回答
标签: javascript jquery recaptcha