XSLT <xsl:template> 元素

2020-04-24 16:07 更新

XSL 樣式表由一個(gè)或多套被稱為模板(template)的規(guī)則組成。

每個(gè)模板含有當(dāng)某個(gè)指定的節(jié)點(diǎn)被匹配時(shí)所應(yīng)用的規(guī)則。

<xsl:template> 元素

<xsl:template> 元素用于構(gòu)建模板。

match 屬性用于關(guān)聯(lián) XML 元素和模板。match 屬性也可用來為整個(gè) XML 文檔定義模板。match 屬性的值是 XPath 表達(dá)式(舉例,match="/" 定義整個(gè)文檔)。

好了,讓我們看一下上一章中的 XSL 文件的簡(jiǎn)化版本:

實(shí)例

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 
<xsl:template match="/">
  <html>
  <body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th>Title</th>
      <th>Artist</th>
    </tr>
    <tr>
      <td>.</td>
      <td>.</td>
    </tr>
  </table>
  </body>
  </html>
</xsl:template>
 
</xsl:stylesheet>

實(shí)例解釋

由于 XSL 樣式表本身也是一個(gè) XML 文檔,因此它總是由 XML 聲明起始:<?xml version="1.0" encoding="ISO-8859-1"?>.

下一個(gè)元素,<xsl:stylesheet>, ,定義此文檔是一個(gè) XSLT 樣式表文檔(連同版本號(hào)和 XSLT 命名空間屬性)。

<xsl:template> 元素定義了一個(gè)模板。而 match="/" 屬性則把此模板與 XML 源文檔的根相聯(lián)系。

<xsl:template> 元素內(nèi)部的內(nèi)容定義了寫到輸出結(jié)果的 HTML 代碼。

最后兩行定義了模板的結(jié)尾及樣式表的結(jié)尾。

這個(gè)實(shí)例的結(jié)果有一點(diǎn)小缺陷,因?yàn)閿?shù)據(jù)沒有從 XML 文檔被復(fù)制到輸出。在下一章中,您將學(xué)習(xí)到如何使用 <xsl:value-of> 元素從 XML 元素選取值。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)