ReCaptcha 2.0:如果验证码成功,则在回调时启用提交按钮

2022-08-30 08:24:03

我有一个非常简单的形式,如下所示。我想让它禁用“提交”按钮,并且仅在用户成功完成ReCaptcha启用。

我假设我需要一些Javascript / jQuery来做到这一点。

Google关于ReCaptcha 2.0的文档似乎非常稀疏和密集(无论如何,对我来说)。我很感激一些提示:

<form action="something.php" method="post">
    Name: <input type="text" size="40" name="name"><br><br>
    <div class="g-recaptcha" data-sitekey="############-#####"></div>
    <input type="submit" value="Submit" >
</form>

答案 1

我在我的测试网站上做了同样的事情。但是,我使用了一个按钮而不是提交,所以在这里:

必须添加属性 data-callback 属性,该属性执行在完成验证码后指定的函数。data-callback="enableBtn"

<div class="g-recaptcha" data-sitekey="############-#####" data-callback="enableBtn"></div>

并将按钮的 id 设置为所需的任何 ID,并将其设置为禁用:

<input type="button" value="Submit" id="button1" disabled="disabled">

然后在javascript上做一个函数来启用按钮

 function enableBtn(){
   document.getElementById("button1").disabled = false;
 }

希望它有帮助。


答案 2