我有一个页面,通过ajax加载了页面的多个部分,即:
<body>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.5/dojo/dojo.xd.js"
djConfig="parseOnLoad: true, isDebug:true"></script>
<div class="load_when_user_clicks_here"></div>
<div class="load_when_user_clicks_here"></div>
<div class="load_when_user_clicks_here"></div>
</body>然后,我拥有的javascript将用从服务器获取的html替换innerHTML。我已经能够让jquery使用它,并在加载的div上实现更改,但我在处理div上的Dojo时遇到了问题。到目前为止,Dojo在我第一次加载内容时没有出现问题。但是,当我调用使用ajax从服务器重新加载内容时,下面的dijit.InLineEditBox没有被实例化。
下面是从服务器获取的html示例:
<script type="text/javascript">
dojo.require("dijit.InlineEditBox");
dojo.require("dijit.form.TextBox");
</script>
<span style="margin:30px;" dojoType="dijit.InlineEditBox"
editor="dijit.form.TextBox">editable</span>如何确保即使在重新加载时,浏览器也在实例化div?
发布于 2010-12-20 10:53:11
我不确定我是否完全理解了这个问题,但是如果您要动态加载包含dojoType的内容,则需要在执行innerHTML赋值之后手动对其调用dojo.parser.parse()。您还可以考虑将dijit.TitlePane或ContentPane与href属性一起使用
https://stackoverflow.com/questions/4485631
复制相似问题