ajax页面加载-Dojo
发布时间:2020-12-16 02:46:54 所属栏目:百科 来源:网络整理
导读:嗨我有一个页面,左侧有导航菜单,任何链接 单击此菜单,将Ajax get调用发送到服务器 右侧使用新页面进行更新. 我目前这样做是通过创建2列,左列 包含导航链接,右边的col包含一个名为the的div 具有dojox.layout.ContentPane.Now的dojotype的内容 从服务器收到数
嗨我有一个页面,左侧有导航菜单,任何链接
单击此菜单,将Ajax get调用发送到服务器 右侧使用新页面进行更新. 我目前这样做是通过创建2列,左列 dijit.byId("thecontent").setContent=data 现在当我点击导航链接时,右侧会得到 "Tried to register widget with id==thecontent but that id is already registered" 我的主要道场包括如下: – <script type="text/javascript" src="http://o.aolcdn.com/dojo/1.5/dojo/dojo.xd.js"djConfig="parSEOnLoad:false"></script> 我在函数dojo.addOnLoad中执行dojo.parser.parse(),如下所示: – dojo.addOnLoad(function(){ dojo.require("dijit.form.Button"); dojo.require("dijit.form.Textarea"); dojo.require("dijit.form.ValidationTextBox"); dojo.require("dojox.layout.ContentPane"); dojo.require("dijit.Editor"); dojo.addOnLoad(function(){ dojo.parser.parse(); sendgetrequest();//this initiates the xhrget request dojo.removeClass(dojo.byId("doc3"),"hiddendiv"); } ); }) 我也无法在这个新加载的页面中运行任何脚本.没有onclick事件正在运行,只显示dijit小部件… 解决方法
正如肯已经说过的那样,错误意味着你正在创建一个已经存在id的dijit.我的猜测是你在右侧面板中加载AJAX内容而不先破坏旧的右侧面板.
在加载新内容之前,尝试在右侧面板中的主dijit容器上调用destroyRecursive.另外,如果你不需要设置dijit的id,你可能会丢弃id(但这会留下一个内存空洞,因为旧的dijit不会被破坏). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |