当多次通过ajax加载dojo.js时得到Error:defineAlreadyDefined

时间:2012-03-20 09:38:03

标签: jquery ajax dojo

我使用jquery通过ajax加载子页面。子页面有一些dojo小部件,第一次工作正常。但后续加载我得到错误:defineAlreadyDefined和此点之后的其余javascripts不运行,这意味着一些关键的jquery指令,例如UI布局。 任何人都可以提供帮助,因为我在网上搜索了dojo的“错误:defineAlreadyDefined”,而我提出的最好的是它在dojo 1.6中解决,但我使用的是1.7.2。我希望我做一些愚蠢的事情,因为它非常令人沮丧,因为你期望dojo.js可以被用户执行刷新等多次加载。我应该添加我尝试将dojo.js放在主html页面但是然后我收到加载子页面时未找到dijit的问题。

2 个答案:

答案 0 :(得分:0)

我无法解决实际的错误消息,我相信它的原因是在重载上的dojo初始加载中。但是,要解决ui-layout窗格的重新排列问题,我在ajax onComplete函数中包含了myLayout.initContent("center")​

答案 1 :(得分:0)

dojo.js定义了一个名为define的全局变量。我非常肯定你看到的错误来自于你不止一次加载dojo.js而且它让你知道define已经被定义了。理想情况下,您应该只加载dojo.js一次。