Как получить доступ к элементам в DOM? - PullRequest
0 голосов
/ 21 октября 2011

Итак, у меня есть этот XML-файл:

<root>
   <node>
      <name>One</name>
      <val>1</val>
   </node>
   <node>
      <name>Two</name>
      <val>2</val>
   </node>
   <node>
      <name>Three</name>
      <val>3</val>
   </node>
</root>

Итак, насколько я понимаю, для доступа ко всем узлам мне нужно получить список узлов, используя getElementsByName ("node");

Теперь, когда я получил этот список, как мне получить доступ ко всем дочерним элементам? Я не уверен, правильно ли я это делаю.

По сути, мне нужно пройтись по всем элементам узла, и для каждого из них мне нужно извлечь имя и значение, потому что я использую их для вызова другой функции.

Ответы [ 2 ]

0 голосов
/ 21 октября 2011

Если возможно, вы можете использовать DOM Traversal API: http://www.w3.org/TR/DOM-Level-2-Traversal-Range/traversal.html

В Java это будет примерно так:

Document doc = ...;
NodeIterator i = ((DocumentTraversal) doc).createNodeIterator(doc,
NodeFilter.SHOW_ELEMENT, null, false);
Element e = null;
while ((e = (Element) i.nextNode()) != null) {
   System.out.println(e.getTagName());
}

JavaScript должен иметь что-то похожее, если обходAPI реализован.

0 голосов
/ 21 октября 2011

Если x является объектом узла, вы можете использовать свойства x.childNodes, которые предоставят вам список всех дочерних элементов узла x.И затем вы можете получить доступ к y.nodeValue, где y - дочерний узел, чтобы получить значение узла.

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