我添加了两个不可见的recaptcha div,但是当我在inspect元素中看到代码时,我的单页中只添加了一个不可见的recaptcha . 我的代码是:
<div id="captcha1" class="g-recaptcha"
data-sitekey="your_site_key"
data-callback="onSubmit"
data-size="invisible"></div>
<div id="captcha2" class="g-recaptcha"
data-sitekey="your_site_key"
data-callback="onSubmit"
></div>
从Programmatically invoke recaptcha获取参考
你能帮我解决我做错的事吗?
5 回答
下面是一个更可靠的解决方案,彼得和亚历山德罗在嵌套元素时回答 .
有同样的问题 . 经过一番困惑,我得到了它的工作 .
使用了亚历山德罗提供的想法,并使其成功地自动提交表格 .
您必须在每个提交按钮上进行显式渲染
Multiple Invisible reCaptcha V2 on Single Page Dynamically
Step 1>
在页面上添加以下2个Js库
Step 2>
在各自的表格中添加以下div .
Step 3>
创建 init_recaptcha.js
步骤1 - 初始化reCaptcha站点密钥和窗口小部件,例如:窗体1的widget_1
步骤2 - 在init函数中添加代码以创建表单提交回调操作 .
步骤3 - 通过传递reCaptcha ID和createCallbackFn Response来调用renderInvisibleReCaptcha函数 .
Step 4> 表单验证JS中的更改 -
Step 5> 从服务器端验证reCaptcha -
Step 6> 服务器调用后重置小部件 -
你可以使用隐形的recaptcha . 在您的按钮上使用“formname ='rcaptchaformname'”之类的标记来指定要提交的表单并隐藏提交表单输入 .
这允许您保持html5表单验证完整,一个重新签名,但多个按钮接口 . 只需捕获recaptcha生成的令牌密钥的“验证码”输入值 .