1

我已经在一个注册表单的站点中实现了 Invisible reCAPTCHA。当我单击提交按钮时,reCAPTCHA 将出现,并且在验证后它不会调用回调函数。这是脚本。

脚本

 {literal}
 <script src="https://www.google.com/recaptcha/api.js" async defer></script>
 <script>
 function onSuccess = function(token) {
 document.getElementById("registerform").submit();
 }
 </script>
{/literal}

HTML

<form action="" method="post" name="registerform" id="registerform" onsubmit="javascript: return checkRegFormFields(this);">
<td colspan="2" class="button-row">
<button class="btn main-button btn-danger no-bdrs btn-block btn-lg g-recaptcha" data-sitekey="mysitekey" data-callback="onSuccess"  title="Submit">  Submit </button>
</td>
4

1 回答 1

0

在这里,您可能会发生两件事。

1)当您单击提交按钮时,您的回调未注册。

首先使用回调命令您的脚本,然后在 html 中重新验证 api,如下所示 -

(供参考:https ://developers.google.com/recaptcha/docs/invisible#explicit_render )

{literal}
 <script>
 function onSuccess = function(token) {
 document.getElementById("registerform").submit();
 }
 </script>
 <script src="https://www.google.com/recaptcha/api.js" async defer></script>
{/literal}

2)或者如果注册了回调,那么谷歌将您检测为机器人,因此不会调用数据回调,那么在这种情况下,您必须获得验证码图像挑战。

仅当您成功验证时才会调用数据回调。

希望这可以帮助..

于 2017-07-12T08:57:08.140 回答