Как я могу прочитать имена дочерних узлов и их значения в XML без указания имени тега? - PullRequest
2 голосов
/ 10 ноября 2011

Здесь я хочу просмотреть элементы <detail>. Хотя я могу указать имя тега <detail> в своем коде, я не могу использовать имена тегов дочерних элементов. Я хочу знать имена тегов этих элементов и их значения.

Как я могу пройти через них и сделать это?

<?xml version="1.0" encoding="utf-8" ?>
<body>
  <detail>
    <FirstName>t1 </FirstName>
    <LastName>t2</LastName>
    <Company>t3</Company>
    <Country>t4</Country>
    <Proviance>MP</Proviance>
    <city>indore</city>
  </detail>

  <detail>
    <FirstName>t5 </FirstName>
    <LastName>t6</LastName>
    <Company>t7</Company>
    <Country>t8</Country>
    <Proviance>t9</Proviance>
  </detail>

  <detail>
    <FirstName>t10 </FirstName>
    <LastName>t11</LastName>
    <Company>t12</Company>
    <Country>t13</Country>
    <Proviance>t14</Proviance>
  </detail>

</body>

Ответы [ 3 ]

10 голосов
/ 10 ноября 2011

Как насчет;

var details = xml.getElementsByTagName("detail");

for (var i = 0; i < details.length; i++) {
    if (details[i].childNodes) {
        for (var j = 0; j < details[i].childNodes.length; j++) {
            var detail = details[i].childNodes[j];
            if (detail.nodeType === 1)
                alert( "details node " + (i + 1) + ": " + detail.nodeName + "=" + detail.firstChild.nodeValue );
        }
    }
}
1 голос
/ 10 ноября 2011

Еще одна замечательная статья чтения XML в javascript.

В этом руководстве рассматривается только сценарий поддержки IE. Небольшое чтение поможет вам сделать его совместимым с другими браузерами.

Вы можете искать этот текст в Google "XML Parser в браузерах Firefox" даст больше результатов с примером кода.

1 голос
/ 10 ноября 2011

Здесь - учебник по синтаксическому анализу XML с помощью JavaScript.Может быть, это поможет.

Подсказка: найдите tagName на странице

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...