我正在添加ReCAPTCHA到一个(引导哲基尔)网站,有多个联系人表单。页脚有一个弹出模式,偶尔有一个“立即联系我们”部分,还有几个页面上有一个“请求更多关于____的信息”。
由于我在一个页面上有多个联系人表单,所以我需要显式呈现每个recaptcha。代码如下:
在我的JavaScript中:
var CaptchaCallback = function() {
grecaptcha.render('RecaptchaField1', {'sitekey' : 'my_sitekey'
});
grecaptcha.render('RecaptchaField2', {'sitekey' : 'my_sitekey'
});
};
在页脚中(包含在所有页面中)
<div id="RecaptchaField1"></div>
(并在页脚底部)
<script src='https://www.google.com/recaptcha/api.js?onload=CaptchaCallback&render=explicit' async defer></script>
这在一个有两个单独联系人表单的页面上工作得很好(即我在该页面上有一个id为RecaptchaField2),但是如果我登陆到一个只有一个联系人表单的页面上,控制台会抛出一个错误(未捕获的错误:ReCAPTCHA placeholder元素必须是一个元素或id)。
ReCAPTCHA似乎可以正常工作,但谁能帮助我理解是什么导致了这个错误?我所做的所有研究都表明这是因为两次导入库,但我假设情况并非如此,因为问题只出现在某些页面上而不是其他页面上。
谢谢!
我得到了同样的问题,这个解决方案对我不起作用,但我已经找到了一个。
事实上,我使用了插件wordpress联系表单7,不幸的是,我在集成部分中编写了recaptcha的键。
这使得函数recaptcha/api.js被调用了两次,并犯了这个错误。
因此,我刚刚删除了插件并重新安装它,而不填充集成部分,并在文件header.php和footer.php中调用recatpcha,这就起作用了:)
别忘了在联系人表单中放入recaptcha按钮
<div class="g-recaptcha" id="YOUR-ID" data-sitekey="YOUR-KEY" render="explicit"></div>
这对我有用:
var CaptchaCallback = function() {
if ( $('#RecaptchaField1').length ) {
grecaptcha.render('RecaptchaField1', {'sitekey' : 'my_sitekey'
});
}
if ( $('#RecaptchaField2').length ) {
grecaptcha.render('RecaptchaField2', {'sitekey' : 'my_sitekey'
});
}
};
我的项目升级Gradle到4版后无法编译,Android Studio抛出错误: Android 资源编译失败 C:\用户\用户\AndroidStudioProjects\grow_director_v2_net\app\build\中间\增量\合并DevDebugResources\merged.dir\values\values.xml:1475:错误:内部元素必须是资源引用或为空。C:\用
我试图使用antd库创建一个web表,但遇到了一个错误 “react.development.js:1251未捕获错误:react.Children.only应接收单个react元素子元素”。我完全陷入困境,无法找到解决办法。有人能帮忙吗?
我有以下简单的代码: 我得到了这个错误: "必须返回有效的React元素(或null)。您可能已返回未定义、数组或其他无效对象。"
在JS文件上使用javascript-obfuscator并得到以下错误… 导致错误的代码: 对JS文件的更改导致了错误。试图找出哪个变化是罪魁祸首。
错误详细信息 生成环境 Android Studio 3.1.4 minSDKversion=21 目标SDKVersion=28 CompilesDKVersion=28 BuildToolsVersion=“28.0.2”
今天我决定更新Android Studio,因为我安装的3.1版本似乎有点过时了。升级后,由于某种< code >错误,构建项目失败: 全输出: 错误指向构建文件,检查它,我想可能问题出在我的文件上。 我谷歌了一下,发现错误是由这样解析的项目引起的: 并且可以通过将代码替换为如下内容来解决: 但是我应该用字符串数组做什么呢?。