XSLT - บนเซิร์ฟเวอร์
- 上一页 XSLT 在客户端
- 下一页 XSLT 编辑 XML
ເນື່ອງຈາກບໍ່ມີທຸກຄວາມກະແຈາງຂອງສະໜາມທີ່ຈະສະໜັບສະໜູນ XSLT, ການແກ້ໄຂອີກໜຶ່ງຕາມແມ່ນຈະປ່ຽນຂໍ້ມູນ XML ໄປ XHMTL ໃນສະຖານີວິທະຍຸ.
ການແກ້ໄຂທີ່ບັນລຸບັນຍາຍ
ໃນວັນນະຄັດທີ່ກ່ອນນີ້ພວກເຮົາໄດ້ສອນວ່າວິທະຍຸ XSLT ທີ່ຈະປ່ຽນຂໍ້ມູນ XML ໄປ XHMTL. ພວກເຮົາໄດ້ສ້າງ JavaScript ທີ່ຈະປ່ຽນຂໍ້ມູນທີ່ຈະບໍ່ສາມາດດຳເນີນໄດ້ໃນສະໜາມຫາກວິທະຍຸ XML ປະຈຳ. ເພື່ອທີ່ຂໍ້ມູນ XML ຈະສາມາດນຳໃຊ້ໄດ້ໃນທຸກຄວາມກະແຈາງຂອງສະໜາມຫາກວິທະຍຸ, ພວກເຮົາຕ້ອງປ່ຽນຂໍ້ມູນ XML ໃນສະຖານີວິທະຍຸ, ແລະສົ່ງຂໍ້ມູນ XHMTL ໄປຫາສະໜາມ.
ນີ້ແມ່ນຜົນປະໂຫຍດອີກຢ່າງໜຶ່ງຂອງ XSLT. ເປົ້າໝາຍການອອກແບບຂອງ XSLT ໜຶ່ງໃນນັ້ນແມ່ນໃຫ້ມີຄວາມເປັນໄປໄດ້ທີ່ຈະປ່ຽນພາສາຂອງຂໍ້ມູນຈາກຮູບແບບໜຶ່ງໄປຮູບແບບອື່ນອີກໃນສະຖານີວິທະຍຸພາບລະບົບ, ແລະຂອບເຂດທີ່ຈະປ່ອຍຂໍ້ມູນທີ່ບາງຫົວຂໍ້ສຳລັບທຸກຄວາມກະແຈາງຂອງສະໜາມຫາກວິທະຍຸ.
XML ດີໂອແມັກ ແລະ XSL ດີໂອແມັກ
ບັນຍາຍນີ້ກ່ວາແມ່ນ XML ດີໂອແມັກທີ່ສະແດງໃນວັນນະຄັດທີ່ກ່ອນ:
<?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>
ພ້ອມກັບ XSL ຮູບແບບທີ່ຕິດຕາມ:
<?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>
ລະວັງ, ບັນຊີ XML ນີ້ບໍ່ມີການຕິດຕໍ່ XSL
ຫຍັງສໍາຄັນ:ຄຳເຕືອນດັ່ງກ່າວນີ້ສະແດງວ່າ, ບັນຊີ XML ສາມາດນໍາໃຊ້ບັນຊີ XSL ອື່ນໆຫລາຍໆເພື່ອປ່ຽນແປງ
ການປ່ຽນບັນຊີ XML ເປັນ XHTML ໃນທໍລະທັດ
ນີ້ແມ່ນການຂຽນລະຫັດຂອງການປ່ຽນບັນຊີ XML ເປັນ XHTML ໃນທໍລະທັດ:
<% ການອ່ານ XML set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(Server.MapPath("cdcatalog.xml")) ການອ່ານ XSL set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(Server.MapPath("cdcatalog.xsl")) ການປ່ຽນແປງບັນຊີ Response.Write(xml.transformNode(xsl)) %>
ຄຳເຕືອນ:ຖ້າເຈົ້າບໍ່ຮູ້ວ່າເປັນຫຍັງເຈົ້າຈະຂຽນ ASP, ເຈົ້າສາມາດຮຽນຄອມພິວເຕີພະນັກງານຂອງພວກເຮົາອີກASP 教程》
第一段代码创建了微软的 XML 解析器的一个实例,然后把 XML 文件载入了内存。第二段代码创建了解析器的另一个实例,然后把这个 XSL 文件载入了内存。最后一行代码使用 XSL 文档转换了 XML 文档,并把结果作为 XHTML 发送到您的浏览器。任务完成!
- 上一页 XSLT 在客户端
- 下一页 XSLT 编辑 XML