Вызов функции JS внутри файла XSL - PullRequest
0 голосов
/ 24 октября 2019

Я получил XSL-файл, в котором у меня есть некоторый JS-код, например:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:jscript="http://www.url.com"
exclude-result-prefixes="msxsl jscript">


<msxsl:script language="JScript" implements-prefix="jscript">
function getCategoryLabel( elem )
{
    var s = "";

    s += elem.getAttribute("name");
    var oAnc = elem;

    oAnc = oAnc.selectSingleNode("ancestor(CATEGORY)");
    while ( oAnc != null )
    {
        s = oAnc.getAttribute("name") + " - " + s;
        oAnc = oAnc.selectSingleNode("ancestor(CATEGORY)");
    }
    return s;
}
</msxsl:script>

И я хочу вызвать getCategoryLabel js функцию здесьhtml тело, созданное здесь:

<xsl:template match="//API">
        <html>
            <head>
                <xsl:element name="meta">
                    <xsl:attribute name = "charset">UTF-8</xsl:attribute>
                </xsl:element>
                <LINK HREF="API.css" REL="stylesheet" TYPE="text/css"/>
            </head>
            <body>
                //call the getCategoryLabel function here
                <xsl:apply-templates select="./CATEGORY">
                    <xsl:sort select="name"/>
        </xsl:apply-templates>
                <xsl:apply-templates select="./NOTE">
                    <xsl:sort select="number"/>
        </xsl:apply-templates>
            </body>
        </html>
    </xsl:template>

Так я могу это назвать? Если да, то как?

(я не уточнил, но сценарий msxsl, в который включен код JS, находится в том же файле, что и код xsl).

Еще раз спасибо.

...