新的回顾;I don’在(基本上)同一页上做两次工作


New recaptcha doesn't work twice in (basically) the same page

对于我的网站,我正在通过jquery加载一个div中的所有子页面,该div基本上涵盖了除菜单之外的所有内容。结构是这样的,你按下帐户按钮,得到登录表单,然后有一个指向注册页面的链接(触发onclick函数)。

我首先通过最简单的方法将captcha引入到reg页面,因为我无法获得其他任何功能。一切都很好,直到我将captcha添加到登录页面,现在注册页面没有呈现它,我得到了一个"未捕获错误:ReCAPTCHA占位符元素必须为空"的错误。

以下是如何在两个页面上加载captcha:

<script src='https://www.google.com/recaptcha/api.js'></script>
<div id="captcha" class="g-recaptcha" data-sitekey="6LeNGScO_"></div>   

register.php上也有同样的东西,但通过echo

这是显示注册页面的功能

function goregister()
{
    grecaptcha.reset();
    page = 4;
    var element = "#mbody";
    var link = "/php/register.php";
    $(element).load(link);
}

我甚至尝试在captcha-div中添加一个id,并将其innerhtml设置为",但仍然无济于事。

我也有这个错误:

未捕获错误:ReCAPTCHA占位符元素必须为空

就我而言,问题是我导入了库twice。

更确切地说:我的CMS MURA导入了一次库,以提供reCaptcha作为默认服务。我第二次导入了图书馆,没有卑躬屈膝。