让xpath 2.0函数在任何浏览器中都可以工作

时间:2010-07-20 19:46:14

标签: internet-explorer firefox xpath xslt

我想使用XPath 2.0函数,如下所示:

http://www.w3schools.com/xpath/xpath_functions.asp

在浏览器中进行XSL转换。我可以在样式表标签中将XSL版本指定为2.0,但这似乎不会激活2.0 XPath函数(至少在Firefox中)。

例如:

<xsl:value-of select="node-name(//testnode)"/>

给了我:

'node-name' is not a valid XSLT or XPath function. -->node-name(//testnode)<--
IE 8中的

XPath 1.0函数:

http://www.edankert.com/xpathfunctions.html

似乎工作正常。 Chrome似乎不支持我阅读的XSL 2.0。

3 个答案:

答案 0 :(得分:4)

今天,没有浏览器支持XPath 2.0

改为使用name()

答案 1 :(得分:1)

我不相信任何浏览器都支持XSLT 2.0。

如果您想让浏览器执行转换,那么您将被降级为XSLT 1.0。

但是,您可以使用EXSLT扩展功能in certain browsers

答案 2 :(得分:1)

更新到2019::如果要在浏览器中使用更高版本的XPath和XSLT,可以通过第三方Javascript库(例如Saxon-JS)来实现。当前,它支持XPath 3.1和XSLT 3.0。 (免责声明:我的公司Saxonica开发了Saxon-JS)