Использование XPathResult - PullRequest
       3

Использование XPathResult

4 голосов
/ 18 сентября 2010

Я нахожу небольшую документацию по XPathResult на сайте разработчика Mozilla.Все перечисленные функции перенаправляют на главную страницу, поэтому они, вероятно, еще не документированы.

var myFind;
myFind = document.evaluate(
    '/html/body/table[1]',
    document,
    null,
    XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
    null);

Я ищу способ предупредить дерево HTML, которое находится под указанным путем.

Использование alert(myFind); не работает, просто выдает «XPathResult».Под ним есть только tbody и куча tr элементов, и я бы хотел видеть их всех в виде одной строки.

Какую функцию myFind может использовать для этого?

1 Ответ

5 голосов
/ 18 сентября 2010
var myFind;
myFind = document.evaluate(
    '/html/body/table[1]',
    document,
    null,
    XPathResult.FIRST_ORDERED_NODE_TYPE,
    null);

var node = myFind.singleNodeValue;

Я использую FIRST_ORDERED_NODE_TYPE, потому что вы ищете только одну таблицу. singleNodeValue позволяет извлечь узел.

Теперь узел является обычным HTML DOM Узлом . Вы можете сериализовать его так же, как и любой другой узел, например, с serializeToString :

new XMLSerializer().serializeToString(node)

Вы можете найти Использование XPath и XPathResult полезным.

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