Xpages dojo 图表破坏 csjs

Xpages dojo charting breaking csjs

我刚开始使用 Xpages 中的 Dojo 图表功能。在关注 Andrew Champion 的 this tutorial 之后。我发现创建饼图的简单 csjs 脚本不起作用。它打破了 CSJS 饼图的创建。使用最基本的代码以获得更好的可读性。

makeCharts = function() 
{
alert("test");
var pieChart = new dojox.charting.Chart2D("#{id:panel1}");
};

当我在我的 Xpage 中调用该函数时,上面代码中的警报不会 运行。我完全按照教程进行操作,但没有结果。任何帮助将不胜感激。

Xpage源代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" dojoParseOnLoad="true"
    dojoTheme="true">
    <xp:this.resources>
        <xp:dojoModule name="dojox.charting.Chart2D"></xp:dojoModule>
        <xp:script src="/scriptsChartDojo.jss" clientSide="false"></xp:script>
        <xp:script src="/scriptsChartDojoCSJS.js" clientSide="true"></xp:script>
    </xp:this.resources>
    <xp:scriptBlock id="scriptBlock1"
        value="XSP.addOnLoad(makeCharts);">
    </xp:scriptBlock>
    <xp:panel style="height:450px;width:450px" id="panel1">
        </xp:panel>
    </xp:view>

我认为您不能在 js 文件中包含服务器生成的代码。如果您在浏览器中打开 scriptsChartDojoCSJS.js 文件,您会看到 #{id:panel1} 没有被更改。

相反,您可以将 makeCharts 函数添加到您的 xp:scriptBlock。