Jump to content
  • 0

Как проверить наличие элемента в xml?


Int
 Share

Question

Получаю с сервера аяксом xml-структуру, при наличии в которой некоторого элемента, нужно делать некоторое действие.

Я пробовал делать так:

if (xml.getElementsByTagName('element')) {}

Если <element> присутствует, то всё работает, но если его нет, то в firefox выполнения яваскрипта прекращается вообще без каких-либо сообщений об ошибках.

if (xml.getElementsByTagName('element').length) {}

Ещё был такой вариант. С двумя элементами работает, а с третьим не хочет, как бы я его не обзывал.

myajax('get','php.php?getnew',function(xml) {
if (xml.getElementsByTagName('badnews').length) alert('ошибка:\n'+'блаблабла');
if (xml.getElementsByTagName('noauth').length) Logout(); //Тоже работает если приходит <noauth />
if (xml.getElementsByTagName('id').length) alert('работает'); //не работает вообще если нет <id>
#……тут ещё код
});

Вссе эти три элемента не обязательны, но на первый реагирует адекватно, показывает ошибку только если она есть, на второй тоже нормально — разлогинивает, а на последнем прерывается

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Получаю с сервера аяксом xml-структуру, при наличии в которой некоторого элемента, нужно делать некоторое действие.

Выложи куда-то пример. Дебажить серверные приложения со слов пересказчика - гиблое занятие.

Мест возникновения ошибок столько...

Link to comment
Share on other sites

  • 0

http://metotron.ru:880/

пока десктоп включен, можно открывать :) Самая последняя функция в chat.js, я сейчас гостям выдаю <id>0</id>, а вот если не выдаю, то обрывается на этом месте. Хотя предыдущие два работают. В принципе, такой вариант тоже прокатил.

Link to comment
Share on other sites

  • 0

http://metotron.ru:880/

пока десктоп включен, можно открывать :) Самая последняя функция в chat.js, я сейчас гостям выдаю <id>0</id>, а вот если не выдаю, то обрывается на этом месте. Хотя предыдущие два работают. В принципе, такой вариант тоже прокатил.


myajax('get','/php/chat.php?auth&login=1&pass=1',function(rs) {
if (gtag('id',rs).length) alert('ok'); alert('okok'); },'xml');

<id> нет, но код работает

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy