0
下面是XML和XSL,我想通过完整的XML节点的XSL脚本来执行该节点上的一些操作,我不希望使用XPath和想用的SelectSingleNode中运行msxslscript。无法通过XML的XSL脚本
XML
<?xml version="1.0" ?>
<?xml-stylesheet href="doc.xsl" type="text/xsl"?>
<books>
<book>
<name>Revolution</name>
<qty value="4">1</qty>
</book>
<book>
<name>Life of a pie</name>
<qty value="4">5</qty>
</book>
</books>
XSL
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:user="com.nitish">
<msxsl:script language="javascript" implements-prefix="user" >
function getNode(node){
return node.selectSingleNode("books/book/qty/@value");
}
</msxsl:script>
<xsl:template match="/">
<html>
<body>
<h2>Book Details</h2>
<table xmlns:h="http://www.w3.org/TR/html4/" border="1px" cellspacing="20px">
<xsl:variable name="rootNode" select="books"/>
<xsl:for-each select="//book">
<tr><td><xsl:value-of select="user:getNode($rootNode)"/>
</td></tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
请帮助。
我没有看到你的样品中的任何使用selectSingleNode'的'所以如果'selectSingleNode'是你面对然后显示与样品,详细说明您所期望的结果,以及如何将问题你得到的不同。或者至少解释发布的样本有什么问题,即您期望获得哪种结果以及获得的结果有何不同。你有什么错误吗?你使用IE吗?否则,完全不支持使用msxsl:脚本的整个方法。 – 2014-11-06 10:19:30
我想使用selectSingleNode获取qty属性的值。 – 2014-11-06 10:47:57