XML - статьи

         

Динамическое формирование атрибутов на примере параметров ссылки в теге <a>


Предположим теперь, что в каждой строке таблицы нам нужно сделать ссылку на некоторую страницу и передать на эту страницу два параметра - кличку и вес собаки. Понятно, что для каждой строки эти параметры - свои, и их нельзя прописать явно в XSL-файл. Тем не менее задача легко решается при помощи элемента xsl:attribute.

Мы не будем здесь строить специальный пример, ограничимся только соответствующим фрагментом XSL-файла.

<td>

<!-- Create reference to display details. Parameters - Dog Name and Dog Weight -->

<a target="_blank">

<xsl:attribute name="href">DisplayDetails.html?dogName=<xsl:value-of select="dogName"/>&amp;dogWeight=<xsl:value-of select="dogWeight"/></xsl:attribute>

<xsl:attribute name="title">To view some more details about <xsl:value-of select="dogName"/> click to dog name</xsl:attribute>

<xsl:value-of select="dogName"/>

</a>

</td>

В этом примере в ячейке таблицы мы размещаем ссылку на страницу с подробными описаниями. Ссылка указывается в атрибуте href тега <a>. Поскольку  на страницу передаются два параметра, значения которых берутся из XML-файла, этот атрибут формируется динамически. Обратите также внимание - символ &

(амперсанд), разделяющий передаваемые параметры, записывается в XSL-файле в виде &amp;. Во втором атрибуте нам нужна всплывающая подсказка (атрибут title), которая появляется при наведении курсора мыши на ссылку. Текст этой подсказки тоже меняется динамически. Наконец, статический атрибут target

мы разместили непосредственно в теге <a>.

И, наконец, мы ознакомились с комментариями в XSL-файлах. Это вторая строка приведенного фрагмента.

<!-- Create reference to display details. Parameters - Dog Name and Dog Weight -->

На этом мы завершим рассмотрение возможностей чистого XSLT и перейдем к последнему параграфу в этом документе - к динамическому изменению содержимого Web-страницы при помощи возможностей JavaScript и XML/XSLT без каких-либо дополнительных обращений к базе данных.



Содержание раздела