Javascript dojo中的列插件(树)捕获单击事件
我有一个类似于下面代码的dgrid,我的第二个字段是一棵树,当用户单击树的图标时,我需要调用一个XHR。我怎样才能赶上这次活动 谢谢Javascript dojo中的列插件(树)捕获单击事件,javascript,dojo,mouseevent,dgrid,Javascript,Dojo,Mouseevent,Dgrid,我有一个类似于下面代码的dgrid,我的第二个字段是一棵树,当用户单击树的图标时,我需要调用一个XHR。我怎样才能赶上这次活动 谢谢 var CustomGrid = declare([OnDemandGrid, Keyboard, Selection, Pagination]); var grid = new CustomGrid({ columns: [ selector({label: "#",
var CustomGrid = declare([OnDemandGrid, Keyboard, Selection, Pagination]);
var grid = new CustomGrid({
columns: [
selector({label: "#", disabled: function(object){ return object.type == 'DOCx'; }}, "radio"),
{label:'Id', field:'id', sortable: false},
tree({label: "Title", field:"title", sortable: false, indentWidth:20}),
{label:'Count', field:'count', sortable: false}
],
store: memoryStore,
pagingLinks: false,
pagingTextBox: true,
firstLastArrows: true,
pageSizeOptions: [10, 15, 25],
selectionMode: "single", // for Selection; only select a single row at a time
cellNavigation: false // for Keyboard; allow only row-level keyboard navigation
}, "grid");
我通过查看dojo的代码找到了解决方案。 在dgrid/util中有一个名为mouse.js的文件,您可以在其中找到其他类似的示例:
enterRow: handler(".dgrid-content .dgrid-row", "mouseover"),
enterCell: handler(".dgrid-content .dgrid-cell", "mouseover"),
enterHeaderCell: handler(".dgrid-header .dgrid-cell", "mouseover"),
leaveRow: handler(".dgrid-content .dgrid-row", "mouseout"),
leaveCell: handler(".dgrid-content .dgrid-cell", "mouseout"),
leaveHeaderCell: handler(".dgrid-header .dgrid-cell", "mouseout"),
因此,对于我的案例,我刚刚补充:
clickCell: handler(".dgrid-content .dgrid-expando-icon", "click"),
dblclickCell: handler(".dgrid-content .dgrid-cell", "dblclick"),
现在,您可以在dgrid/test中的Grid\u mouseevents.html中测试新事件
问候