2

我正在尝试学习 XPath,但遇到了问题。我用来检索一些获取相应 dom 元素并询问其值的文本。例如:如果我正在编写 Greasemonkey 脚本并且我的浏览器位于:http ://en.m.wikipedia.org/wiki/Hello_World那么,我会:

alert(
   document.getElementById("section_0").textContent
);

所以,我需要对 xpath 做同样的事情。我试过了:

var xpathResult = document.evaluate( "//section_0", document, null, XPathResult.ANY_TYPE, null); 
alert(xpathResult);

但我真的不明白为什么它不起作用。我认为是 xpathExpression,但我找不到显示等同于getElementByIdgetElementsByTagnamegetElementByClassName句子的指南。

你能帮助我吗?

4

2 回答 2

2

等价物:

getElementById(someid)
//*[@id='someid']

getElementsByTagname(tagname);
//tagname

getElementsByClassName(classname)
//*[contains(concat(' ', @class, ' '),' classname ')]
于 2013-04-24T18:29:07.477 回答
1

您的 XPath 应该是:

//*[@id="section_0"]
于 2013-04-24T18:26:35.697 回答