将属性传递给dojo小部件并刷新

时间:2014-06-04 04:36:18

标签: javascript dojo widget

我有一个作业,因为我正在学习dojo小部件,所以我被困在一个部分。

首先,我创建了包含布局的主要小部件(左侧,中间,底部窗格)。 在左侧窗格中,我附加了树窗口小部件(员工名称在树中列出)。 在中心窗格中,我根据要求附加了自定义窗口小部件(员工详细信息)。 底部窗格中相同的数据网格,根据要求的自定义窗口小部件(网格中的其他员工详细信息)。

我计划编写代码,以便我可以单击左窗格的树窗口小部件的子节点,并将员工的ID传递给属性其他两个窗口小部件(中心和底部窗格中的窗口小部件)并查看相应的员工详细信息按点击显示。

这就是我被困住的地方。我无法在小部件上传递值,因为它们是独立的实体。

树窗口小部件(在左窗格中):

var tree = new dijit.Tree({model: tree_model, onClick: function(e){
console.log(e.id[0]); /*clicking on the tree nodes, i'm able to see the user id of the current selection*/
}); 

底部网格(底部窗格中的Custome窗口小部件):

var bottomGridWid = new custom.bottomGrid({default_user_id: userid});
//passing different userid to the widget will automatically query the grid and display the result 

1 个答案:

答案 0 :(得分:0)

如果在创建时未提供,则为所有窗口小部件提供唯一的ID。 在您的情况下,最好在窗口小部件创建期间为其提供唯一ID。 使用ID获取窗口小部件(引用)。需要使用API​​ dijit.registry.byId()来获取对小部件的引用
看看下面的链接
http://dojotoolkit.org/reference-guide/1.9/dijit/registry.html
掌握完小部件后,您可以使用特定于小部件的API来操作它。