Как се появява Uncaught TypeError: Cannot set properties of null at getElementById()?
„ Uncaught TypeError: Не може да се зададат свойства на null при getElementById() ” може да възникне поради следните причини:
Пример 1: Възникване на Uncaught TypeError: Не може да се зададат свойства на null при getElementById() поради предишен достъп на елемент
В този пример ще бъде обсъдена грешката, възникнала поради достъп до конкретния елемент, преди да го посочи:
< сценарий >
документ. getElementById ( 'глава' ) . innerHTML = „JavaScript съдържание“ ;
сценарий >
< център >< тяло >
< h2 id = 'глава' > Уебсайт Linuxhint h2 >
тяло > център >
Приложете следните стъпки, както е дадено в горните редове на кода:
- Първо, включете кодовия блок на JavaScript в „ <скрипт> ” таг.
- Тук отворете елемента, съответстващ на посоченото „ документ за самоличност ' използвайки ' getElementById() ” метод.
- Също така приложете „ innerHTML ”, за да актуализирате съдържанието на достъпния елемент.
- В HTML кода в „ <тяло> ”, включете заглавие с посоченото „ документ за самоличност ”.
- При изпълнение на кода се появява грешка от типа „ Не могат да се задават свойства на null при getElementById() ' ще се случи. Това е така, защото елементът „ ” е достъпен, преди дори да е посочен.
Изход
В горния изход може да се види, че посочената грешка се показва поради предишен достъп до елемента.
Решение
Възникналата по-горе грешка в този случай може да бъде разрешена чрез последователност на кода, така че елементът да бъде посочен, преди да бъде достъпен.
Следният пример илюстрира заявената концепция:
< център >< тяло >< h2 id = 'глава' > Уебсайт Linuxhint h2 >
тяло > център >
< сценарий >
документ. getElementById ( 'глава' ) . innerHTML = „JavaScript съдържание“ ;
сценарий >
Горният код е идентичен с предишния код с промяната в разположението на кодовите блокове. Това е такова, че „ ” е посочен преди да бъде достъпен в JavaScript кода.
Изход
Както се вижда, възникналата грешка е разрешена и актуализираното съдържание чрез „ innerHTML ” се показва свойството.
Пример 2: Възникване на Uncaught TypeError: Не могат да се зададат свойства на null при getElementById() поради неправилен достъп до Id
Посочената грешка може да възникне и при неправилен достъп до идентификатора.
Нека да преминем през посочения по-долу пример:
< идентификатор на шатра = 'за' > Java шатра >< тип скрипт = 'текст/javascript' >
документ. getElementById ( '#за' ) . innerText = 'Скрипт' ;
сценарий >
В горния кодов фрагмент:
- Включете „ <шатра> ' елемент с посоченото ' документ за самоличност ” и текстова стойност.
- В JS частта на кода отворете елемента, включен в предишната стъпка, като използвате „ getElementById() ” метод.
- „ документ за самоличност ” форматът тук не е правилен, като се има предвид методът за достъп до конкретния елемент.
- Тук „ innerText ” показва посочената текстова стойност.
Изход
В този резултат може да се провери, че приложеното свойство не е повлияло на елемента поради неправилен формат на идентификатора.
Решение
Споменатата грешка в този конкретен сценарий може да бъде разрешена чрез правилно указване на идентификатора при достъп до елемента:
< идентификатор на шатра = 'за' > Java шатра >< тип скрипт = 'текст/javascript' >
документ. getElementById ( 'за' ) . innerText = 'Скрипт' ;
сценарий >
Изпълнете посочените по-долу стъпки, както е посочено в горния код:
- Включете „ <шатра> ” елемент с даденото “ документ за самоличност ”.
- В кодовия фрагмент на JavaScript осъществете достъп до елемента в предишната стъпка, като посочите „ документ за самоличност ” правилно чрез „ getElementById() ” метод.
- Накрая приложете „ innerText ” и показва посоченото текстово съдържание, което ще бъде актуализирано в този случай.
Изход
В горния изход може да се визуализира, че се показва актуализираното текстово съдържание.
Заключение
„ Uncaught TypeError: Не може да се зададат свойства на null при getElementById() ” в JavaScript може да бъде разрешен чрез указване на елемента преди достъп до него или чрез указване на id в правилния формат. След като направите това, съответните функции могат да бъдат изпълнени и в двата случая. Този блог ръководи за разрешаването на Uncaught TypeError: Cannot set properties of null at getElementById() in JavaScript.