Dojo当Contentpane将content属性作为字符串时如何获取内容属性的id?

时间:2014-05-21 08:18:58

标签: javascript dojo

我正在学习通过道场进行编程。我想要GridContainer的id。 请告诉我建议! 我的代码。

 function resTab(formCount,cont){
        var tab=new dijit.layout.ContentPane({
        title:formCount,
        id:''+formCount,
        content:cont,
        class:'tab',
        closable: true
    });
    dijit.byId('tabContainer').addChild(tab); 
}
cont='<div dojoType="dojox.layout.GridContainer" class="test" doLayout="true"     id="gc'+gridCounter+'" region="center" hasResizableColumns="true" opacity="0.3"  nbZones="1" allowAutoScroll="false" withHandles="true" dragHandleClass="dijitTitlePaneTitle" minChildWidth="200" minColWidth="10"></div>';

cont有一个GridContiner标签的字符串。如果我想查找字符串的ID值我该怎么办?

 var selectedTab=registry.byId('tabContainer').get('selectedChildWidget');

我想解决上面的代码到应用程序。谢谢你的建议。

1 个答案:

答案 0 :(得分:0)

我假设您在不了解真实身份证件(包含GridContainer)的情况下尝试gridCounter

您可以通过获取ContentPane的引用,然后使用函数getChildren()来实现。

例如:

var tabs = registry.byId("tabContainer"); // Get a reference to the TabContainer
var cPane = tabs.get("selectedChildWidget"); // Get a reference to the ContentPane
var grid = cPane.getChildren()[0]; // Get a reference to the GridContainer

当然,这是假设您的GridContainer被定位为ContentPane的第一个孩子。

如果你真的只想要这个ID,那么你可以使用:

var id = grid.id;

示例:http://jsfiddle.net/JaU9v/