Latest web development tutorials

XSLT на стороне сервера

Так как не все браузеры поддерживают XSLT, другое решение, чтобы выполнить преобразование в формат XML на сервере XHTML.


Решение кросс-браузер

В предыдущем разделе мы объясним, как использовать XSLT через браузер, чтобы завершить XML для преобразования XHTML. Мы создали некоторые использовать парсер для преобразования JavaScript. Решение JavaScript не работает ни в XML-анализатора браузера.

Для того, чтобы данные XML применимы к любому типу браузера, мы должны быть на сервере для преобразования XML-документа, а затем отправляется обратно в браузер в качестве XHMTL.

Это еще одно преимущество XSLT. Одной из целей разработки для XSLT должен был сделать данные на сервере, чтобы конвертировать из одного формата в другой формат, насколько это возможно, для всех типов браузеров возвращаются считываемые данные.


XML-документы и файлы XSLT

Посмотрите на это в предыдущем разделе было показано вне документа 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>

Просмотр файла XML .

И сопровождающий 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>

См файл XSL .

Обратите внимание, что файл XML не содержит ссылки на файл XSL.

ВАЖНО: Данное предложение означает, XML - файлы могут использовать несколько различных стилей XSL для преобразования.


На сервере преобразования XML в XHTML

Он используется на сервере в XML-файлы в исходный код 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))
%>

Совет: Если вы не знаете , как писать ASP, вы можете изучить наш ASP учебник .

Первый блок кода создает экземпляр синтаксического анализа XML Microsoft (XMLDOM) и файл XML в память. Второй абзац кода создает еще один экземпляр анализатора, и к этому XSL файл в память. Последняя строка кода с использованием XSL документа преобразования XML-документ и отправляет результат как XHTML к вашему браузеру. Отлично!

Как это работает .