2014-01-12 85 views
0

我已經創建了一個XML和XSL文件作爲HTML加載到網頁上。由於某種原因,這不起作用..數據不會顯示在網頁瀏覽器的表格中。如何將XML和XSLT文件加載到瀏覽器中

這是我的代碼如下,有什麼我失蹤?請幫忙?

XML文件中的代碼:

<?xml version="1.0"?> 
<?xml-stylesheet href="skymovies.xsl" type="text/xsl"?> 
<collection> 
    <film> 
    <title>Happy Gilmore</title> 
    <year>1991</year> 
    <genre>Comedy</genre> 
    </film> 
    <film> 
    <title>Rango</title> 
    <year>1991</year> 
    <genre>Comedy</genre> 
    </film> 
    <film> 
    <title>Happy Gilmore</title> 
    <year>1991</year> 
    <genre>Comedy</genre> 
    </film> 
    </movie> 
</collection> 

XSLT文件代碼:

<?xml version="1.0" encoding="IS0-8859-1"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:template match="/collection"> 
    <html> 
    <body> 
     <table border="1"> 
     <tr> 
      <th>Title</th> 
      <th>Year</th> 
      <th>Genre</th> 
     </tr> 

     <xsl:for-each select="film"> 
     <xsl:value-of select="title" /></td> 
     <xsl:value-of select="year" /></td> 
     <xsl:value-of select="genre" /></td> 
     </xsl:for-each> 
     </table> 
    </body> 
    </html> 
    </xsl:template> 
</xsl:stylesheet> 

有anythig我做錯了嗎?請幫忙?

回答

0

您的XML無效。您的XML中有一個</movie>,它沒有開始標記。嘗試使用此XML:

<?xml version="1.0"?> 
<?xml-stylesheet href="skymovies.xsl" type="text/xsl"?> 
<collection> 
    <film> 
    <title>Happy Gilmore</title> 
    <year>1991</year> 
    <genre>Comedy</genre> 
    </film> 
    <film> 
    <title>Rango</title> 
    <year>1991</year> 
    <genre>Comedy</genre> 
    </film> 
    <film> 
    <title>Happy Gilmore</title> 
    <year>1991</year> 
    <genre>Comedy</genre> 
    </film> 
</collection> 
+0

非常感謝你。上帝保佑 – user3187867

0

您的XSLT無效:您已關閉</td>標籤,您從未打開。你也忘了爲每部電影創造一排。它應該看起來像這樣:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:template match="/collection"> 
    <html> 
    <body> 
     <table border="1"> 
     <tr> 
      <th>Title</th> 
      <th>Year</th> 
      <th>Genre</th> 
     </tr> 
     <xsl:for-each select="film"> 
     <tr> 
      <td><xsl:value-of select="title" /></td> 
      <td><xsl:value-of select="year" /></td> 
      <td><xsl:value-of select="genre" /></td> 
     </tr> 
     </xsl:for-each> 
     </table> 
    </body> 
    </html> 
    </xsl:template> 
</xsl:stylesheet> 
+0

嗨謝謝你回覆..但這似乎不工作。只是爲了澄清,我只需雙擊.xml文件即可在Internet Explorer中運行此操作。這是運行這些文件的正確方法嗎? – user3187867

+0

不用擔心,先生您提供的解決方案現在正在工作!謝謝!上帝保佑! – user3187867

+0

在瀏覽器中單擊運行這些文件即可正常工作,但正如您發現的,這不是一個非常友好的調試環境。如果你是那種有時會犯錯誤的人,那麼你會發現在諸如Stylus Studio或oXygen之類的工具中開發XSLT代碼更加高效。 –

相關問題