簡體   English   中英

獲得XSL,XML相同名稱的價值

[英]Get value-of in XSL, XML same names

玩了一段時間...我有一個帶有以下幾行的xml文件

<image size="small">image_small.jpg</image>
<image size="medium">image_medium.jpg</image>
<image size="large">image_large.jpg</image>

例如,關於如何獲取中等網址的任何想法。

目前我有...但沒有成功

<tr>
<td><img><xsl:attribute name="src">
          <xsl:value-of select="image/@size[@size=medium]" />
         </xsl:attribute>
    </img>
</td>
</tr>

提前致謝

您的問題的定義不是很好,因為我們沒有整個XSLT或所需的輸出,但是我將嘗試一下:

如果使用for循環遍歷不同的圖像,則需要在循環本身而不是循環的內容上設置約束。

如果將示例代碼放在xsl:for-each ,它將遍歷每張圖像,但僅當具有@size="medium"image是當前節點時才填充@src屬性。 這將為您提供具有三張圖像的三個表行,但只有一個具有有效@src屬性的圖像。

而是更改xsl:for-each或使用xsl:apply-templates )以僅使用@size="medium"遍歷圖像:

<!-- This will only iterate over the medium sized images. -->
<xsl:for-each select="image[@size='medium']">
  <tr>
    <td>
      <img src="{.}"/>
    </td>
  </tr>
</xsl:for-each>

另一個技巧:代替使用xsl:attribute使用屬性值模板

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM