从XSL文件运行JavaScript时出错

时间:2012-06-27 12:28:33

标签: javascript xslt

我有一个具有JavaScript功能的XSL文件。我在调用JavaScript函数时遇到错误,我无法理解错误。请帮忙。

这是JavaScript:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
                              xmlns:msxsl="urn:schemas-microsoft-com:xslt">
    <xsl:import href="page_layout.xsl"/>
    <xsl:output method="html" indent="yes"/>

    <msxsl:script language="JScript">
        <![CDATA[
        function EnableSubmit() 
        {
        alert ("Hello there");
        }
    ]]>
    </msxsl:script>

这是调用函数的表单 -

< form action="NewUserNavigation" method="post" name="NewUserNavigationForm">
            < input name="eventName" type="hidden" value="NewUserNavigationEvent"/>
            < div class="sansIcon">
            < input type="checkbox" name="chk" onClick="EnableSubmit()">I accept< /input>
            < /div>
            < div class="buttonBarPage">
            < input name="Submit" class="primary" type="submit" value="Continue"/>
            < /div>
        < /form>

表单和JavaScript都是同一个.xml文件的一部分。

1 个答案:

答案 0 :(得分:1)

您误解了<msxsl:script>的作用和含义。

它允许它包含的javascript函数在转换期间被称为 - 而不是在转换运行之前或之后。

您实际上希望创建表单的XSLT转换也生成 javascript文本作为结果,以便表单可以访问它的功能。