我正在寻找一个dojo增强网格的示例,该网格包含单元格或行菜单中单元或行数据访问的上下文菜单。我设法使用行上下文菜单创建增强型网格。我可以创建一个捕获点击行菜单项的事件的函数。但是,我不确定如何在菜单项处理程序的上下文中访问行数据。我在夜间搭建的测试中没有看到任何例子。有没有这种在线可用的例子?是否有带上下文菜单的dojo增强网格示例
1
A
回答
0
我想通了。甚至在行上下文菜单上,将行号捕获到全局中。即使在菜单项上单击,也可以从全局中检索行,然后使用它查找网格中行的内容。我一直在使用这种方法,它的工作非常完美。
1
我有一个类似的问题。我想创建一个上下文菜单,允许用户从数据网格中删除他们右键单击的项目,并从数据存储中删除项目。认为它应该是非常简单的,并与您的帮助和其他网站,我想出了以下代码。
var selectedItem; // This has to be declared "globally" outside of any functions
function onRowContextMenuFunc(e) {
grid5_rowMenu.bindDomNode(e.grid.domNode);
selectedItem = e.grid.getItem(e.rowIndex);
}
function gridRowContextMenu_onClick(e) {
store3.deleteItem(selectedItem);
}
。
<div dojoType="dijit.Menu" id="grid5_rowMenu" jsId="grid5_rowMenu" style="display: none;">
<div dojoType="dijit.MenuItem" onClick="gridRowContextMenu_onClick">Delete</div>
<div dojoType="dijit.MenuItem">Cancel</div>
</div>
。
<div id="grid" dojoType="dojox.grid.DataGrid" jsId="grid5" store="store3" structure="layoutStructure" rowsPerPage="40" onRowContextMenu="onRowContextMenuFunc"></div>
当然,如果你是编程创建的DataGrid,你想补充onRowContextMenu:onRowContextMenuFunc你的声明。
+0
编辑:有上述代码的一些问题,它允许用户右键单击一行,然后单击取消或以其他方式隐藏上下文菜单,然后右键单击数据网格的空白区域,然后单击删除菜单选项它会删除先前右键单击的项目。如果你有同样的问题,请查看我修改的代码[这里](http://stackoverflow.com/questions/8187693/dojo-datagrid-context-menu-onrowcontextmenu-displays-even-when-right-clicking-在/ 8216093#8216093) – 2011-11-21 19:00:35
0
以下是如何从上下文菜单中访问选定行:
// First create a menu object to hold the various menus
var menusObject = {
// headerMenu: new dijit.Menu(),
rowMenu: new dijit.Menu()//,
// cellMenu: new dijit.Menu(),
// selectedRegionMenu: new dijit.Menu()
};
添加菜单项
menusObject.rowMenu.addChild(new dijit.MenuItem({
label: "Show me data",
onClick: function(e){
console.log(this.selectedRow)
}
}));
menusObject.rowMenu.startup();
创建网格
var grid = new dojox.grid.EnhancedGrid({
store : store,
structure : layout,
rowsPerPage: 10,
escapeHTMLInData: false,
plugins: {
menus: menusObject
}
}, 'some are to place');
//激活消息从发送数据网格排到菜单项
dojo.connect(grid, 'onRowContextMenu', function(e)
{
// Set the "selectedItem" property of all of the menu items of a menu. This lets you reference the row data!!
var menuChildren = menusObject.rowMenu.getChildren();
for(var i = 0; i<menuChildren.length; i++){
menuChildren[i].selectedRow = this.getItem(e.rowIndex);
}
});
相关问题
- 1. Dojo增强网格滚动与JsonRestStore
- 2. Dojo增强网格可编辑问题
- 3. 用Json实现DoJo增强网格
- 4. 如何禁用dojo增强网格?
- 5. 如何从单元格上下文菜单访问(增强)网格单元格数据?
- 6. 带有上下文菜单的Android ListView
- 7. Dojo:增强的网格布局选项具有子列?
- 8. dojo增强网格的自由文本搜索框
- 9. 使用菜单类的网格的上下文敏感菜单
- 10. 在显示上下文菜单CONTENTEDITABLE格
- 11. MvcSiteMapProvider - 增强的自举下拉菜单
- 12. 如何显示上下文菜单网格布局中的Android
- 13. 增强WPF菜单
- 14. dijit/Dojo上下文菜单不显示SubMenu
- 15. Vaadin网格上下文菜单未打开/显示
- 16. 在WPF网格行中显示多个上下文菜单
- 17. 使用AMD风格创建dojo增强网格
- 18. 下拉菜单与jQuery(渐进增强)
- 19. 为表单输入显示强制上下文菜单
- 20. 带上下文菜单的WPF按钮
- 21. 不需要右键单击的上下文菜单的示例
- 22. Dojo增强型网格中的SCROLL问题 - 以编程方式
- 23. 编辑Dojo增强型网格时的空白
- 24. 如何获取Dojo增强网格中的总行数?
- 25. 1KB网格 - 下拉菜单未显示
- 26. Bootstrap下拉菜单显示网格
- 27. Dojo图表上的上下文菜单操作
- 28. 首选可定制渐进增强下拉菜单/菜单?
- 29. 网格行上的上下文菜单不会打开
- 30. Sprite菜单,网站示例
你能解释一下如何捕捉事件中的行号吗?因为我没有看到如何去做。谢谢。 – 2011-01-18 18:49:19