我在mozilla开发者网站上找到关于XPathResult的小文档。列出的所有功能都重定向到主页面,因此它们可能尚未记录。
var myFind;
myFind = document.evaluate(
'/html/body/table[1]',
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null);
我正在寻找一种方法来提醒给定路径下的HTML树。
使用alert(myFind);
不起作用,它只是提供“XPathResult”。
它下方只有一个tbody和一堆tr元素,我希望它们都能在一个警报中看到它们为1个字符串。
myFind可以使用哪些功能来执行此操作?
答案 0 :(得分:5)
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 Node。您可以按照与任何其他节点相同的方式对其进行序列化,例如与serializeToString:
new XMLSerializer().serializeToString(node)
您可能会发现Using XPath和XPathResult有帮助。