У меня есть простая контактная форма, созданная с помощью ASP .Net с использованием панели обновления. Все работает как положено, но я вижу ошибку
recaptcha__en.js: необработанная ошибка: reCAPTCHA уже отображено в этом элементе
в окне консоли
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<script src="https://www.google.com/recaptcha/api.js?onload=pageLoad&render=explicit" async defer></script>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div class="g-recaptcha" data-sitekey="XXXX"></div>
</ContentTemplate>
</asp:UpdatePanel>
<script language="javascript" type="text/javascript">
function pageLoad() {
$('.g-recaptcha').each(function (index, obj) {
grecaptcha.render(obj, { 'sitekey': 'XXXX' });
});
}
</script>
Я изначально добавил onload=pageLoad&render=explicit
, как будто капча не была проверена, и вы нажали кнопку отправки, капча исчезла. Добавление onload=pageLoad&render=explicit
к строке сценария решило эту проблему, но теперь я получаю вышеуказанную ошибку.
Если я попытаюсь удалить некоторые элементы, то что-то еще сломается, т. Е. Капча не отображается или не отображается при обратной передаче?