我有一个作业,因为我正在学习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*/
});
var bottomGridWid = new custom.bottomGrid({default_user_id: userid});
//passing different userid to the widget will automatically query the grid and display the result
答案 0 :(得分:0)
如果在创建时未提供,则为所有窗口小部件提供唯一的ID。
在您的情况下,最好在窗口小部件创建期间为其提供唯一ID。
使用ID获取窗口小部件(引用)。需要使用API dijit.registry.byId()来获取对小部件的引用
看看下面的链接
http://dojotoolkit.org/reference-guide/1.9/dijit/registry.html
掌握完小部件后,您可以使用特定于小部件的API来操作它。