Неперехваченная (в обещании) Ошибка: элемент-заполнитель reCAPTCHA должен быть элементом или идентификатором - PullRequest
0 голосов
/ 05 мая 2020

Я обнаружил, что здесь задаются похожие вопросы, но я проверил все предложенные варианты и не смог найти проблему. На странице https://www.basement-supercomputing.com/create-an-account/ у меня JavaScript ошибка

Uncaught (в обещании) Ошибка: элемент-заполнитель reCAPTCHA должен быть элементом или идентификатором

Это означает, что reCaptcha не находит элемент, чтобы добавить себя на страницу, насколько я понимаю. Однако, если я проверю источник страницы, я увижу тег HTML: https://monosnap.com/file/PeYWAw7wfSENan2At5VaGQ1ghErqhb

<div class="recaptcha controls">
    <div id="hika-recaptcha" class="hika-recaptcha"></div>
    <script type="text/javascript">
        var onloadCallbackHKRecaptcha = function() {
            window.hkCaptchaWidget = grecaptcha.render('hika-recaptcha', {'sitekey':'6LeexMISAAAAAIVTKhGZyvOmfc4s7Fqh-xo2a6t8', 'theme':'light'});

        };
        var scriptTag = document.createElement('script');
        scriptTag.src = "https://www.google.com/recaptcha/api.js?onload=onloadCallbackHKRecaptcha&render=explicit&hl=en-GB";
        scriptTag.defer = true;
        document.body.appendChild(scriptTag);
    </script>
</div>

Я также читал, что такая ошибка может произойти, если было несколько тегов с тот же идентификатор (это не так), или если рекапча загружалась на страницу несколько раз (это тоже не так). Это также может произойти, если javascript выполняется до добавления тега на страницу, но тег уже существует и даже до javascript рекапчи на странице. Я также проверил тот же код ReCaptcha на локальном хосте, он работает нормально: https://monosnap.com/file/2g0AgAWducwtjchIoC3Sf3uFxRuE3B Наконец, обратите внимание, что в обоих случаях веб-сайт создан с помощью Joomla CMS.

Я не Я не вижу причин, почему это не сработает, поэтому, если у кого-то есть идея, это было бы здорово! Заранее спасибо

1 Ответ

0 голосов
/ 05 мая 2020

Только что столкнулся с этой проблемой. Глядя на трассировку стека, кажется, что вы используете инструменты moo (и я тоже). Похоже, что если вы удалите его или обновите инструменты moo, это должно устранить ошибку recaptcha. Благодаря другому похожему сообщению здесь: Ошибка Recaptcha 2.0: элемент-заполнитель reCAPTCHA должен быть элементом или идентификатором

...