我是Dojo的新手并尝试使用一组动态创建的数据网格来完成页面。
每个网格的创建如下:
membersGrid = new dojox.grid.DataGrid({
query: { id: '*'},
structure: membersLayout,
store: membersStore,
autoWidth: true,
autoHeight: true,
initialWidth: '650px',
rowSelector: '5px',
rowsPerPage: 20,
selectable: true
}, 'membersGridNode'+index.toString());
我在每个网格下都有一个动态创建的按钮,按下时会触发点击事件。从这个事件中我可以得到我的数据网格索引。
function performCopyAction (button) {
var gridName = "membersGridNode"+button.id;
var grid = dijit.byId(gridName);
...
从这里开始,想法是获取对象并访问datagrid上的选定行。但是,“网格”为空。我尝试了很多方法来从Google搜索中获取网格对象,但我正在努力弄清楚我做错了什么。
答案 0 :(得分:0)
当您动态或声明地创建和小部件/ dijits时,您需要指定id
属性,如下所示。如果未提供id
属性,则dojo dijit系统会分配唯一ID。
membersGrid = new dojox.grid.DataGrid({
id: 'grid',
....
....
然后在任何地方访问dijit
var grid = dijit.byId('grid');