DOJO href - 问题

时间:2014-09-08 06:31:48

标签: javascript jsp dojo

我在另一个页面中使用了一个html页面资源。

<div class="appTrailingAccordionContainer" data-dojo-type="dijit/layout/AccordionContainer" data-dojo-props="minSize:20, region:'trailing', splitter:true">
            <div data-dojo-type="dijit/layout/AccordionPane" title="Chat" href = "OnlineUsers.jsp">
            </div>
        </div>

在单个页面中,onlineUsers.jsp页面工作正常,但在此页面中它给出了

ReferenceError: ajaxReqForLoadOnlineGrid is not defined

ajaxReqForLoadOnlineGrid是onlineUsers.jsp页面中的一个函数。它的错误是什么?

1 个答案:

答案 0 :(得分:0)

嗯,就像错误说的那样简单,函数没有定义。如果它在您单独访问页面时有效,但在通过href属性使用它时不起作用,那么您可能在 OnlineUsers.jsp 上定义了该函数。

您应该知道dijit/layout/AccordionPane模块(类似于dijit/layout/ContentPane)不允许在异步加载的页面内执行脚本。

因此,要么将ajaxReqForLoadOnlineGrid()函数移动到父JSP页面,要么使用dojox/layout/ContentPane模块。该模块有一个名为executeScripts的属性,允许您在远程页面上执行脚本。

无论如何,dijit/layout/AccordionPane模块已被弃用,转移到dijit/layout/ContentPanedojox/layout/ContentPane并不是一件坏事。