Почему пишет "Cannot read property 'addEventListener' of null"

Вот мой код JS:

function submit() {
window.alert("PRIVET");
};
var eqr = document.getElementById(address);
eqr.addEventListener('click' , submit);

И вот мой HTML:

<div>
    <input type="submit" id="address"/>
</div>

Ответы (2 шт):

Автор решения: Mero
  1. Добавь '' вокруг address:

    var eqr = document.getElementById('address');
    
  2. Добавь в начале файла 'use strict', во избежание подобных ошибок. Вместо строки с id для поиска, была передана переменная address. Такой переменной нет и браузер создал ее налету, в ней лежит undefined. По итогу браузер подставил в поиск undefined, ничего не нашел и вернул null как результат:

    // ищем элемент с id = undefined
    var eqr = document.getElementById(address); 
    

'use strict' - строгий режим, при котором подобные ошибки сразу всплывают, браузер не пытается создавать неявно переменные, прописать его нужно в самом начале скрипта.

→ Ссылка
Автор решения: farkon00

Вы написали address без кавычек, поэтому можно сказать, что вы обращаетесь к переменной address. Если вам нужен именно id address, тогда надо написать его в кавычках.

И на данный момент для getElementById появилась более современная замена querySelector. document.querySelector("#address"), то есть вместо названия id вы пишите селектор как в css.

→ Ссылка