Сортировка элементов справочника средствами XSLT — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
Строка 18: Строка 18:
  
 
'''<xsl:sort select="@id"/>''' - @id это значение, по которому будет произведена сортировка. Также можно указать атрибут order, он может принимать значения: ascending или descending.
 
'''<xsl:sort select="@id"/>''' - @id это значение, по которому будет произведена сортировка. Также можно указать атрибут order, он может принимать значения: ascending или descending.
[[Категория:Шаблонизаторы]][[Категория:Верстка в XSLT]]
+
[[Категория:Верстка в XSLT]]

Текущая версия на 20:34, 4 июня 2013

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

<xsl:template match="field[values]" mode="fieldValue">
    <xsl:apply-templates select="values/item[@selected='selected']" mode="fieldOption"/>
</xsl:template>

чтобы подключить сортировку, необходимо прописать функцию sort внутри apply-templates:

<xsl:template match="field[values]" mode="fieldValue">
   <xsl:apply-templates select="values/item[@selected='selected']" mode="fieldOption">
      <xsl:sort select="@id"/>
   </xsl:apply-templates>
</xsl:template>


<xsl:sort select="@id"/> - @id это значение, по которому будет произведена сортировка. Также можно указать атрибут order, он может принимать значения: ascending или descending.