我使用dijit contentpane作为标签。选项卡内容包含我的自定义小部件。在我自己的小部件中,我使用dojo查询来处理这些元素,通过我的小部件ID。如果我通过href:属性设置标签内容,那么工作正常。但是如果我按内容:属性设置标签内容,则dojo查询找不到第th个元素。这会是渲染错误吗?如果我观看我的小部件的容器节点,那么我会看到这些元素。似乎dojo查询无法找到我的小部件ID。有趣的是我的小部件的其他html元素完美呈现。
var tabContainer = registry.byId(data.parent);
var pane = new contentpane({ id:data.id, title:data.title, iconClass:
data.icon, closable: data.closable, style: data.style});
if(data.content){pane.set('content', data.content);}
if(data.href){pane.set('href', data.href);}
tabContainer.addChild(pane);
tabContainer.selectChild(pane);
我通过dojo.byId检查我的小部件的状态,如果我使用第一个(设置内容)方法,我的小部件节点不会在dojo中注册。
答案 0 :(得分:0)
您必须调用Content Pane Dijit的startup()方法,请参阅https://dojotoolkit.org/reference-guide/1.10/dijit/layout/ContentPane.html
var pane = new contentpane({ id:data.id, title:data.title, iconClass: data.icon, closable: data.closable, style: data.style});
pane.startup();