我有一个Webix数据表
webix.ui({
view:"datatable", id:"dtable", data:grid_data,
columns:[
{id:"title", adjust:true},
{id:"more", template:"<icon class='webix_icon fa-cog'></icon>"}
]
});
附带上下文菜单
webix.ui({
view:"contextmenu",
data:["More info", "Edit", "Delete record"],
click:function(id, context){
webix.message(id+" on row "+this.getContext().id);
}
}).attachTo( $$("dtable") );
这是我的snippet
想知道是否可以仅在图标上显示上下文菜单?有任何想法吗?感谢。
答案 0 :(得分:1)
在Webix文档中,您将找到http://neo4j.com/docs/stable/query-create-unique.html#_create_unique_relationships事件。使用它,您可以检查列ID并阻止在其他列上显示上下文菜单:
on:{
onBeforeContextMenu:function(id, e, node){
if (id.column !== "more")
return false;
}
}
在您的代码段中,该列仅包含图标,因此此解决方案可以满足您的需求。另外,我建议您通过
阻止数据表上的浏览器上下文webix.event($$("dtable").$view, "contextmenu", function(e){
webix.html.preventEvent(e);
});