xsl добавление динамического идентификатора для диапазона в каждый - PullRequest
2 голосов
/ 09 августа 2011

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

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"             xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
  <xsl:template match="/">
      <xsl:for-each select="data/item">
        <xsl:sort select="position()" data-type="number" order="descending"/>
             <span id="spanDescription"/>
      </xsl:for-each>
    </div>
  </xsl:template>
</xsl:stylesheet>

Ответы [ 2 ]

1 голос
/ 09 августа 2011

Вы можете использовать функцию generate-id():

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"             xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
  <xsl:template match="/">
      <xsl:for-each select="data/item">
        <xsl:sort select="position()" data-type="number" order="descending"/>
             <span id="{generate-id()}"/>
      </xsl:for-each>
  </xsl:template>
</xsl:stylesheet>
0 голосов
/ 09 августа 2011

Используйте переменную и concat():

    <xsl:variable name="id" select="generate-id()"/>
    <span id="{$id}"/>
    <script type="text/javascript">
     <xsl:value-of select="concat('replaceAll(',$id,');')"/>
    </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...