我想在HTML表格中顯示XML內容。我用下面(簡化)代碼,這樣做:XSL,在同一個html表中顯示項目[1]和項目[2]
<xsl:template match="/">
<xsl:apply-templates select="/products/product">
<xsl:sort select="populariteit" order="descending" data-type="number"/>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="product">
<xsl:if test="position()=1">
<table>
<tr>
<td>
<xsl:value-of select="title"/>
</td>
</tr>
</table>
</xsl:if>
</xsl:template>
用下面(簡化)的XML:
<products>
<product>
<title>Title One</title>
<popularity>250</popularity>
</product>
<product>
<title>Title Two</title>
<popularity>500</popularity>
</product>
<product>
<title>Title Three</title>
<popularity>400</popularity>
</product>
</products>
它是什麼樣的列表中「人氣」,然後顯示錶中第一個條目的標題(最受歡迎)。
現在,我想要完成的是顯示來自前兩受歡迎物品的標題。但無論我嘗試,XSLT都會在兩個不同的表中輸出它們,而不是一個。
我已經試過了諸如:
<xsl:template match="product">
<table>
<tr>
<td>
<xsl:if test="position()=1">
<xsl:value-of select="title"/>
</xsl:if>
<xsl:if test="position()=2">
<xsl:value-of select="title"/>
</xsl:if>
</td>
</tr>
</table>
</xsl:template>
但是,這會導致兩個不同的表;我希望標題在同一個表中彼此相鄰顯示,,同時仍然使用排序列表中的信息。
我想要的HTML輸出將是:
<table>
<tr>
<td>
Title Three Title Two
</td>
</tr>
</table>
據我只用使用一個XSL來生成此輸出,因爲在我使用該軟件的某些限制是很重要的。
請發佈所需的HTML輸出。 –