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>

テーブル 'Columns' には列名が返され、テーブル 'Clients' には各列のデータが含まれます。上記のコードは、すべての異なる列名を正常に表示します。しかし、データを取得してループに含めて表示しようとすると<xsl:value-of select="/List/Clients/*[$var]"/>、最初の列のデータのみが返されます。

4

1 に答える 1