Ошибка при изменении текста с помощью javascript

Я использую google recaptcha в своем проекте django. Но она не является английской. Поэтому я хочу изменить его написание с помощью javascript.

html

{% extends 'base.html' %}
{% block content %}
<div class="form-body">
    <div class="row">
        <div class="form-holder">
            <div class="form-content">
                <div class="form-items">
                    <h1>Registration</h1>
                    <br><br>
                    <form class="requires-validation" method="POST" novalidate>

                      {% csrf_token %}
                      {{form.as_p}}
                        <div class="form-button">
                            <button id="submit" type="submit" class="btn btn-primary">Register</button>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
</div>

<script type="text/javascript">
  document.querySelector('recaptcha-anchor-label').innerHTML = "I'm not a robot";

</script>

{% endblock %}

После того, как я сделал это, он не применяет html в браузере. Ниже сообщение об ошибке:

Невозможно установить свойства null (установка 'innerHTML')

Проблема в том, что ни один элемент не может быть найден с помощью следующего оператора.

document.querySelector('recaptcha-anchor-label')

В случае, если recaptcha-anchor-label является id, перед ним следует использовать #.

document.querySelector('#recaptcha-anchor-label')

смотрите Document.querySelector()

Если вы все еще сталкиваетесь с ошибкой. Попробуйте сделать следующее Браузер всегда загружает весь HTML DOM сверху вниз. Любой код JavaScript, написанный внутри тегов script (присутствующих в разделе head вашего HTML-файла), выполняется движком рендеринга браузера еще до загрузки всего DOM (различных тегов элементов HTML, присутствующих в теге body). Скрипты, присутствующие в теге head, пытаются получить доступ к элементу с id hello еще до того, как он был отображен в DOM. Таким образом, очевидно, что JavaScript не смог увидеть этот элемент, и поэтому вы видите ошибку нулевой ссылки.

Переместите тег script после всех элементов DOM, то есть внизу, где заканчивается тег body.

Невозможно установить свойство 'innerHTML' равным null

Эта проблема должна быть вызвана 'recaptcha-anchor-label', пожалуйста, проверьте, является ли 'recaptcha-anchor-label' "class" или "id", если это class, пожалуйста, добавьте "." перед ним. Если это class, добавьте перед ним "#". например: document.querySelector('.recaptcha-anchor-label').innerHTML = "Я не робот"; или document.querySelector('#recaptcha-anchor-label').innerHTML = "Я не робот";

Вернуться на верх