Использование переменной XSL - PullRequest
3 голосов
/ 27 февраля 2012

Привет, у меня есть одна переменная XSL

<xsl:variable name="QTime" select="response/lst/int[@name='QTime']"/> 

Теперь мне нужно передать это в функцию JavaScript.Пожалуйста, помогите мне, как это сделать ...

<span onmouseout='c();' onmouseover='s($numFound);'>

Например

<span onmouseout='c();' onmouseover='s(900);'>

Ответы [ 2 ]

3 голосов
/ 27 февраля 2012

Simple:

<span onmouseout='c();' onmouseover='s({$numFound});'>

Здесь { и } являются ключевыми - при использовании в атрибутах они используются xslt как сокращение для оценки содержимого в соответствии с правилами xslt. Это эквивалентно:

<span onmouseout='c();'>
    <xsl:attribute name="onmouseover">s(<xsl:value-of select="$numFound"/>);</xsl:attribute>
</span>
2 голосов
/ 27 февраля 2012

Я предполагаю, что вы генерируете некоторый HTML-код с помощью XSL-преобразования.Затем вы можете попробовать это:

<xsl:element name="span">
    <xsl:attribute name="onmouseout">
        <xsl:text>c();</xsl:text>
    </xsl:attribute>
    <xsl:attribute name="onmouseover" select="concat('s(', $numFound, ');')" />
</xsl:element>
...