Javascript jQuery中的上下文菜单项
我想通过jQuery显示条件上下文菜单项 例如: 我的帐户里有汽车。我想展示关于条件的选项 如果车是我自己的,那么所有菜单项都应该对我可见。若和我共享,那个么只有视图菜单应该对我可见Javascript jQuery中的上下文菜单项,javascript,jquery,contextmenu,jstree,Javascript,Jquery,Contextmenu,Jstree,我想通过jQuery显示条件上下文菜单项 例如: 我的帐户里有汽车。我想展示关于条件的选项 如果车是我自己的,那么所有菜单项都应该对我可见。若和我共享,那个么只有视图菜单应该对我可见 if (type == 'vehicle') { (function () { var vehicle_id = node.data.vehicle_id; var vehicle_status = ''; $.ajax({ url: baseUrl + '/ch
if (type == 'vehicle') {
(function () {
var vehicle_id = node.data.vehicle_id;
var vehicle_status = '';
$.ajax({
url: baseUrl + '/check-vehicle-status/'+vehicle_id,
success: function(data) {
console.log(data);
if(data == 'shared'){
//what should I write here? to show only View option
}
}
});
items = {
"View": {
"label": "View Vehicle",
"action": function action() {
self.viewVehicle(vehicle_id);
}
},
"modify": {
"label": "Edit Vehicle",
"action": function action() {
self.editVehicle(vehicle_id);
}
},
"delete": {
"label": "Delete Vehicle",
"action": function action() {
dialogHandler.showDeleteVehicle(function () {
self.removeVehicle(vehicle_id);
});
}
},
如果树节点的node.data将有一个值,则必须在如下上下文菜单方法中检查数据参数 检查演示-
请分享你已经拥有的我正在发送带有汽车ID的ajax呼叫,它给我的汽车是我自己的或与我共享的。所以我想添加这个条件,如果汽车是与我共享显示只查看操作。其他明智的显示所有选项,如编辑、删除等。嘿,感谢尼古拉的回复。但是你能帮我把ajax响应变成全局的,这样我就可以在itemsSure中使用它了,但是我恐怕我没有这个想法。在显示上下文菜单之前,在右键单击节点时是否要进行ajax调用?是。根据ajax调用结果,应该显示菜单子项。
...
contextmenu: {
items: function (node) {
// remove default context menu items
var tmp = $.jstree.defaults.contextmenu.items();
delete tmp.rename;
delete tmp.remove;
delete tmp.ccp;
delete tmp.create;
for (menuItem in items) {
if( menuItem === 'View' || node.data !== 'shared') {
tmp[ menuItem ] = {
id: menuItem,
label: items[menuItem].label,
action: items[menuItem].action
}
}
}
return tmp;
}
},