2011-10-20 16 views
1

XMLデータファイルでは、私は画像のコレクションを持っています<image_list>;このコレクションの中で、私は異なる名前の画像を持っています(<image_result>のname属性で与えられています)。XSLの引用:属性を使用して画像srcを設定してください

引用符をエスケープしてこれを動作させるにはどうすればよいですか?両方の引用符で&quot;または\"を使用しようとしましたが、emacsが赤色に点灯してフォーマットエラーが発生しています。

XSLスニペット:

<table> 
    <tr> 
<xsl:for-each select="image_list/image_result"> 
    <td> 
    <img src ="<xsl:value-of select="name"/>" style="width:450px"/> 
    </td> 
</xsl:for-each> 
    </tr> 
</table> 

答えて

7

あなたのXSLTは、整形式のXML文書である必要があり、その構造の種類あなたは試みているだけでは不可能です。代わりにAttribute Value Templateを使用してください。

<img src="{name}" style="width:450px"/> 
+0

誠にありがとうございます。 Googleに適切なものを見つけるまでには長い時間がかかりました。 – user

+0

なんらかの理由で、 '' – user

+2

@Oliverを実行したときにのみ機能します - おそらく 'name'はソースドキュメントの属性なのでしょう。 – Oded

2

<td>
<img src="{name}" style="width:450px"/>
</td>

はそれを行う必要があります。

2

を使用できxsl:attribute

<td> 
    <img style="width:450px"> 
    <xsl:attribute name="src"> 
    <xsl:value-of select="name"/> 
    </xsl:attribute> 
    </img> 
</td> 

または簡略化オプション(使用attribute value template):

<td> 
    <img src="{name}" />" style="width:450px"/> 
</td> 
関連する問題