1
條件語句我試圖讓那種「開關」的條件語句,所以根據XML文件中的type
屬性的值 - 我把某個圖標在HTML中,然後我添加文本。但是,如果工作不完全......或者不完全按照我的想法。沒有完全工作「的選擇,當」在XSLT
的XML:
<?xml version="1.0" encoding="utf-8"?>
<TreeView>
<Parent text="Installation">
<child text="Startup" type="video" file="startup.wmv" icon="c://user/desktop/blahblah.jpg"/>
<child text="Getting there" type="video" file="gettingthere.wmv" icontPath="something"/>
<child text="Steps" type="document" file="steps.docx" icon="asd"/>
<child text="Pictures" type="presentation" file="pics.jpg" icon="dasdasdas"/>
</Parent>
<Parent text="Usage">
<child text="Tilbud pane" type="video" file="tilbud.mwv" icon="asdasd"/>
<child text="Report pane" type="document" file="report.docx" icon="gfdhd"/>
</Parent>
</TreeView>
的XSLT:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8"/>
<xsl:template match="/">
<ul id="LinkedList1" class="LinkedList">
<xsl:apply-templates/>
</ul>
</xsl:template>
<xsl:template match="Parent">
<li>
<xsl:value-of select="@text"/>
<br/>
<ul>
<xsl:choose>
<xsl:when test="child/@type = 'video'">
<img src="play_icon.png" alt="play_video_icon" title="Video tutorial" />
</xsl:when>
<xsl:when test="child/@type = 'document'">
<img src="word_icon.png" alt="text_document_icon" title="Text Document" />
</xsl:when>
<xsl:when test="child/@type = 'presentation'">
<img src="powerpoint_icon.png" alt="powerpoint_icon" title="Power Point presentation" />
</xsl:when>
</xsl:choose>
<xsl:apply-templates select="child"/>
</ul>
</li>
</xsl:template>
<xsl:template match="child">
<li><xsl:value-of select="@text"/></li>
</xsl:template>
</xsl:stylesheet>
這就是我得到 - >
![Not correct.][1]
------------------------------------
這是我怎麼想看 - >
![Correct.][2]
------------------------------------
我想我沒有正確地訂購條件語句,但我沒有真正知道如何。那麼,任何想法如何解決這個問題?
是啊,我才意識到我的錯誤(這是我把'選擇-when'聲明中的「父」模板),並在想爲什麼不在子模板中使用'choose-when'。然後你更新了你的答案。 :) 謝謝! – Syspect
+1推薦的模板匹配方法,而不是使用'' –