0

我有一个包含大量列的数据库表,因此要在 XSLT 中显示它们,我需要遍历所有列名并将它们带回来,并显示与这些列名对应的所有数据。

  <table class="list">
    <tr>
      <xsl:for-each select="Columns">
      <th>
        <xsl:value-of select="Name"/>
      </th>
      </xsl:for-each>
    </tr>

    <xsl:for-each select="Clients">
      <tr>
      <xsl:for-each select="/List/Columns">
        <xsl:variable name="var" select="Name"></xsl:variable>
        <td>
          <xsl:value-of select="$var"/>|
          <xsl:value-of select="/List/Clients/*[$var]"/>
        </td>
      </xsl:for-each>
      </tr>
    </xsl:for-each>


  </table>

“列”表带回列名,“客户”表包含每列中的数据。上面的代码成功地显示了所有不同的列名。但是当试图抓取数据并使用<xsl:value-of select="/List/Clients/*[$var]"/>包含在循环中显示它时,只会带回第一列数据。

4

1 回答 1

0

发现解决方案<xsl:value-of select="/List/Clients/*[$var]"/> 将被替换为<xsl:value-of select="/List/Clients/*[local-name()=$var]"/>

于 2013-07-23T11:52:39.603 回答