テンプレートは、データベースから生成されたデータセットを表示します。データセットには多くの行があります。XSLテンプレートで各レコードのテーブルを繰り返さない方法
<xsl:template match="Photos">
は、データセット内の各行に対して実行されます。データセット内のすべての行には1つのイメージがあります。
<td id="tdImage">
を繰り返すだけですが、残りは1回だけ実行します。
この目的は、画像を垂直ではなく水平に表示することです。事前に
<xsl:template match="Photos">
<table width = "600">
<tr style="width:600;">
<xsl:if test = "SequenceNumber=1" >
<td colspan ="5" class ="input">Photos:</td>
</xsl:if>
</tr>
<tr style="width:600;">
<td id="tdImage">
<table width ="150">
<tr>
<td style ="padding-left:15px">
<table width ="150">
<tr style="width:150px;">
<td style="width:135px;">
<a href = '{src}' style="font-size:10px;">
<xsl:value-of select="FileName"/>
</a>
</td>
</tr>
<tr style="width:150px;">
<td style="width:150px;">
<img type = "hidden" Width="75" Height="75" src='{src}' />
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
ありがとう!
編集:例のデータセット
SequenceNumber | FileName | src
---------------------------------------------------------------------
1 | flowers.jpg | blabla.ashx?SequenceNumber=1
2 | light.jpg | blabla.ashx?SequenceNumber=2
3 | garden.jpg | blabla.ashx?SequenceNumber=3
4 | candy.jpg | blabla.ashx?SequenceNumber=4
このXSLTを試してみてください、あなたが入力として使用されているXMLデータセットの例を示していることはできますか?ありがとうございました! –
@Wafae ...それは本当に入力ソースですか?それはXML形式ではありませんか?これを投稿してください。データのテーブルビューではありません。特定の要素を見る必要があります。 – Parfait
@パフェええ、まさに入力ソースです。データセットは、ストアドプロシージャのテーブル結果です。私がここで変更したのは、テーブル結果の画像の 'src'だけです。それ以外のものはまったく同じです。 – Wafae