XSLT sa Server
- 上一页 XSLT 在客户端
- 下一页 XSLT 编辑 XML
Dahil hindi lahat ng browser ay sumusuporta sa XSLT, isa pang solusyon ay tapusin ang pagbabagong format mula XML hanggang sa XHTML sa server.
Soluksyon na Magkakatulad sa Browser
Sa nakaraang kabanata, sinalaysay namin kung paano gamitin ang XSLT sa browser upang tapusin ang pagbabago mula XML hanggang sa XHTML. Ginawa namin ang isang JavaScript na gamit ang XML parser para sa pagbabago. Ang solusyong JavaScript ay hindi gumagana sa mga browser na walang XML parser. Upang gamitin ang data ng XML sa anumang uri ng browser, dapat natin ipalit ang dokumentong XML sa server, at ipapadala bilang XHMTL sa browser.
Ito ay isa sa mga pangunahing kalakip ng disenyo ng XSLT. Isang layunin ng disenyo ng XSLT ay gumawa ng posibleng pagbabagong format ng data mula sa isang format hanggang sa ibang format sa server, at ibalik bilang madaling basahin na data sa lahat ng uri ng browser.
File na XML at XSL
Tingnan ang dokumentong XML na ito na ipinapakita sa nakaraang kabanata:
<?xml version="1.0" encoding="ISO-8859-1"?> <catalog> <cd> <title>Empire Burlesque</title> <artist>Bob Dylan</artist> <country>USA</country> <company>Columbia</company> <price>10.90</price> <year>1985</year> </cd> . . . </catalog>
Tingnan ang file na XML na ito:。
atong kasama ang XSL na estilong tablo:
<?xml version="1.0" encoding="ISO-8859-1"?> <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 align="left">Title</th> <th align="left">Artist</th> </tr> <xsl:for-each select="catalog/cd"> <tr> <td><xsl:value-of select="title" /></td> <td><xsl:value-of select="artist" /></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
Pansin na ang XML file na ito ay walang sagot sa reference sa XSL file.
Mahalagang Balita:Ang pangungusap na ito ay nagpapahiwatig na ang XML file ay maaaring gamitin ang ilang iba't ibang XSL stylesheet para sa pagbabago.
Pagbabago ng XML sa XHTML sa server
Ito ang pinagmulan ng kodigo sa server na nagbabagong XML sa XHTML:
<% Load XML set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(Server.MapPath("cdcatalog.xml")) Load XSL set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(Server.MapPath("cdcatalog.xsl")) Transform file Response.Write(xml.transformNode(xsl)) %>
Mga Babala:Kung hindi mo alam kung paano maglagay ng ASP, maaari kang mag-aral ng amingASP Tutorial》
第一段代码创建了微软的 XML 解析器的一个实例,然后把 XML 文件载入了内存。第二段代码创建了解析器的另一个实例,然后把这个 XSL 文件载入了内存。最后一行代码使用 XSL 文档转换了 XML 文档,并把结果作为 XHTML 发送到您的浏览器。任务完成!
- 上一页 XSLT 在客户端
- 下一页 XSLT 编辑 XML