Dojo 如何使用dijit.layout.TabContainer指定所选选项卡? 如何在启动时指定所选选项卡 如何以编程方式选择选项卡

Dojo 如何使用dijit.layout.TabContainer指定所选选项卡? 如何在启动时指定所选选项卡 如何以编程方式选择选项卡,dojo,tabcontainer,Dojo,Tabcontainer,您可以使用选中的属性指定启动时显示的选项卡 new dijit.layout.ContentPane({title: "My Tab Title", content: dojo.byId("MyContent"),selected:true}); TabContainer启动后,您可以使用带有id或小部件引用的selectChild。请注意,在TabContainer启动之前调用selectChild会导致错误。HTML-使用selected属性 <div id="tabContaine

您可以使用选中的属性指定启动时显示的选项卡

new dijit.layout.ContentPane({title: "My Tab Title",
content: dojo.byId("MyContent"),selected:true});

TabContainer启动后,您可以使用带有id或小部件引用的selectChild。请注意,在TabContainer启动之前调用selectChild会导致错误。

HTML-使用selected属性

<div id="tabContainer" dojoType="dijit.layout.TabContainer" 
     tabStrip="true" style="width: 100%; height: 20em;">
    <div id="tab1" dojoType="dijit.layout.ContentPane" title="Tab 1">Tab 1</div>
    <div id="tab2" dojoType="dijit.layout.ContentPane" title="Tab 2"
         selected="true">Selected tab 2</div>
</div>
您可以在此处找到更多示例:


警告此演示来自夜间构建。并非所有功能都包含在1.3.2版本中。

此答案不完整。您描述了如何在启动时设置所选选项卡,但海报还询问了如何以编程方式切换选项卡。这个解决方案有些奇怪,因为selectChild()需要一个小部件,而不是一个数字,所以您需要访问要选择的内容窗格的对象。在构建窗格时,这很容易,但要在运行时任意操作,必须首先获取所需的子级,然后告诉tabContainer选择它。我在你的回答中加了这个。
var cp = new dijit.layout.ContentPane({
                     title: 'Tab title',                       
                     content: 'Selected tab...'
                  });
var tc = dijit.byId("tabContainer");
tc.addChild(cp);
tc.selectChild(cp);