我想用一个非常简单的 html 模板创建一个 dojo 小部件:
<div id="contentExternal"></div>
然后在小部件加载时,我想从外部服务加载某些 url。然后在加载 url 后,我想放置一个与加载的 url 相等的 with src 参数。我已经写了:
dojo.provide("dojoModules.ExternalWebsitePane");
dojo.require("dijit._Widget");
dojo.require("dijit._Templated");
dojo.require("dojoModules.ConfigurationPane");
dojo.declare("dojoModules.ExternalWebsitePane", [dijit._Widget, dijit._Templated],
{
templateString: dojo.cache("dojoModules", "templates/ExternalWebsitePane.html"),
widgetsInTemplate: false,
constructor: function() {
}
,
startup: function() {
//Get Config
var serviceParams = new Object();
serviceParams.ServiceType = "GetConfig";
ecm.model.Request.invokePluginService("ExternalWebsitePlugin", "ExternalWebsiteService",
{requestParams: serviceParams, requestCompleteCallback: function(response) {
iframe = new Object();
iframe.src = response.configuration.value;
iframe.class = "iframe1";
var content = document.getElementById('contentExternal');
content.appendChild(iframe);
}});
}
});
但是代码执行失败
var content = document.getElementById('contentExternal');
content.appendChild(iframe);
它说内容为空。我怀疑来自 html 模板的 div 尚未加载。我应该如何添加元素?还是什么时候?