【发布时间】:2011-06-24 08:21:26
【问题描述】:
我有一组名为 <testData> 的数据,其中包含许多节点。
如何检测节点是否存在?
我试过了
<xsl:if test="/testData">
和
<xsl:if test="../testData">
两者都不起作用。我确定这是可能的,但我不确定如何。 :P
对于上下文,XML 文件的布局是这样的
<overall>
<body/>
<state/>
<data/>(the one I want access to
</overall>
我目前在<body> 标签中,但我想在全球范围内访问它。 /overall/data 不应该工作吗?
编辑 2: 现在,我有一个数据索引,当将模板应用于正文中的标签时,我需要随时使用它。在正文中,我如何判断数据是否存在?有时会,有时不会。实在控制不了。 :)
【问题讨论】:
-
您应该提供一个简洁的 XML 示例。您的问题 90% 在于滥用上下文。
-
啊。我没有逃避我的代码。 :P
-
取决于上下文节点。
-
“一个都不起作用” - 这是一个危险信号,上面写着“它在什么方面不起作用?”你有错误吗?结果不正确?如果是后者,预期结果和实际结果是什么?如果您使用以
/开头的XPath 表达式,则结果不依赖于上下文节点(只要您在正确的文档中)。但是,如果不知道“它不起作用”是什么意思,就很难为您提供帮助。