@TempUserMain

Обработка несуществующего XML-тега при парсинге?

Для парсинга используется модуль: XMLDom

Имеется xml-файл, в котором может содержаться тег "SomeTag".

Необходимо проверить имеется ли в коде тег "SomeTag".

При использовании кода (в xml-файле тег "SomeTag" отсутствует):
if(doc.documentElement.getElementsByTagName("SomeTag") == null) {
        continue;
}

выводится ошибка:
"TypeError: Cannot call method 'getElementsByTagName' of null"

Подскажите, пожалуйста, как проверить наличие тега в xml-файле?
  • Вопрос задан
  • 2934 просмотра
Решения вопроса 1
@TempUserMain Автор вопроса
Gorily
Благодарю за ответ.

Вопрос решен.

Для проверки существования тега можно использовать:
if (doc.getElementsByTagName("SomeTag").length === 0) {
        continue;
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Gorily
@Gorily
JS не мой профиль, но судя по тексту ошибки у вас doc или documentElement равен null и вы пытаетесь у него (у null) вызвать метод, которого не существует.
Таким образов вопрос не в том, что getElementsByTagName не ищет элемент, а в том, что у вас что-то до этого не инициировано, об этом говорит и простой запрос по тексту ошибки в гугле, вот подобные проблемы с решениями:
stackoverflow.com/questions/20641420/cannot-call-m...
https://developer.appcelerator.com/question/155648...
Если не разберётесь, покажите больший кусок кода.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы