0

嗨,我正在尝试显示一些符合特定条件的东西。在我的 xml 文件中,我有一堆“供应商”

<Suppliers>
 <ASupplier>
  <SupplierId> 12 </SupplierId>
  <SupplierName> Amazon </SupplierName>
  <Email> Something@live.com </Email>
  <StartDate> 01</11</2010 </StartDate>
  <ContractLength> 6 </ContractLength>
  <AnnualTurnover> 1233.32 </AnnualTurnover>
 </ASupplier>
</Suppliers>

这是我的 xslt 文件中的代码

<xsl:if test="$SearchType = 'Length'">
 <xsl:for-each select="ASupplier[$SupplierFilter >= ContractLength]">
  <tr>
   <td>
    <xsl:value-of select="../SupplierName"/>
   </td>
  </tr>
 </xsl:for-each>
</xsl:if>

'SearchType' 是一个参数。我遇到的问题是我取回了空数据而不是里面有名字的表。它返回正确的数字,但没有任何数据,即我有 3 个合同长度为 6 或更少的供应商,如果我输入 6 并搜索它会返回 3 个表格单元格但没有任何数据。有什么想法吗。ps 我有函数开始并包含使用类似代码并且工作得很好。

4

1 回答 1

1

您显示的输入丢失了它的 XML 标记,因此很难看到 xslt 的作用(我会把它们放回去)。

那说我猜

<xsl:value-of select="../SupplierName"/>

应该

<xsl:value-of select="SupplierName"/>

如果SupplierName是一个孩子ASupplier

于 2013-02-06T20:55:19.807 回答