Recaptcha 2.0 error: reCAPTCHA placeholder element must be an element or id
Recaptcha 2.0 error: reCAPTCHA placeholder element must be an element or id
我查看了我能找到的所有其他 post,其中 none 为我解决了问题。
我在我的文档头中调用了一次 ReCaptcha API:
<script src="https://www.google.com/recaptcha/api.js?hl=he-IL&onload=onloadCallback&render=explicit" type="text/javascript"></script>
紧接着
var onloadCallback = function() {
grecaptcha.render("recaptcha2", {
sitekey: "6LendPIUAAAAAGQqB_2tq8fpgdGfBnEQA3v-CB0g",
theme: "light"
});
};
我的控制台出现以下错误:
recaptcha__iw.js:60 Uncaught (in promise) Error: reCAPTCHA placeholder element must be an element or id
at mv (recaptcha__iw.js:60)
at Object.render (mootools-core.js:88)
at onloadCallback (register:56)
这是我的实时页面:
https://www.tofesyashir.co.il/register
我试过更改顺序。我已经尝试将异步延迟添加到我的脚本调用中,但没有任何帮助。
另外,非常奇怪,如果我手动调用grecaptcha.render,错误会再次触发,即使我在页面中100% 存在的ID 上使用它。由于某种原因,它根本不会在任何 div 上呈现。
大家怎么看?
查看异常的 stackm 跟踪,您会发现实际调用的 .render()
方法来自 mootools:
Uncaught (in promise) Error: reCAPTCHA placeholder element must be an element or id
at mv (recaptcha__iw.js:60)
at Object.render (mootools-core.js:88)
at onloadCallback (register:56)
由于您使用的 mootools 被缩小了,所以我不能说清楚到底哪里出了问题。然而,在我看来,好像在该方法中完成了一些参数重新绑定,并且可能这会导致将其他内容分配给第一个 apremeter,无论以何种方式最终调用 reCaptcha 方法。
所以我尝试在本地副本中从您的网页中删除 mootools - 它确实解决了问题,reCaptcha 在 mootools 消失后工作正常。
还有一个公开的错误报告:https://github.com/google/recaptcha/issues/376。 link 提供了相关问题中发布的解决方案:手动更新 mootools 似乎可以解决问题。
我查看了我能找到的所有其他 post,其中 none 为我解决了问题。 我在我的文档头中调用了一次 ReCaptcha API:
<script src="https://www.google.com/recaptcha/api.js?hl=he-IL&onload=onloadCallback&render=explicit" type="text/javascript"></script>
紧接着
var onloadCallback = function() {
grecaptcha.render("recaptcha2", {
sitekey: "6LendPIUAAAAAGQqB_2tq8fpgdGfBnEQA3v-CB0g",
theme: "light"
});
};
我的控制台出现以下错误:
recaptcha__iw.js:60 Uncaught (in promise) Error: reCAPTCHA placeholder element must be an element or id
at mv (recaptcha__iw.js:60)
at Object.render (mootools-core.js:88)
at onloadCallback (register:56)
这是我的实时页面: https://www.tofesyashir.co.il/register
我试过更改顺序。我已经尝试将异步延迟添加到我的脚本调用中,但没有任何帮助。
另外,非常奇怪,如果我手动调用grecaptcha.render,错误会再次触发,即使我在页面中100% 存在的ID 上使用它。由于某种原因,它根本不会在任何 div 上呈现。
大家怎么看?
查看异常的 stackm 跟踪,您会发现实际调用的 .render()
方法来自 mootools:
Uncaught (in promise) Error: reCAPTCHA placeholder element must be an element or id
at mv (recaptcha__iw.js:60)
at Object.render (mootools-core.js:88)
at onloadCallback (register:56)
由于您使用的 mootools 被缩小了,所以我不能说清楚到底哪里出了问题。然而,在我看来,好像在该方法中完成了一些参数重新绑定,并且可能这会导致将其他内容分配给第一个 apremeter,无论以何种方式最终调用 reCaptcha 方法。
所以我尝试在本地副本中从您的网页中删除 mootools - 它确实解决了问题,reCaptcha 在 mootools 消失后工作正常。
还有一个公开的错误报告:https://github.com/google/recaptcha/issues/376。 link 提供了相关问题中发布的解决方案:手动更新 mootools 似乎可以解决问题。