EasyUI Forum

General Category => EasyUI for jQuery => Topic started by: mzeddd on November 17, 2011, 10:56:48 AM



Title: Unique context menu for each record in datagrid
Post by: mzeddd on November 17, 2011, 10:56:48 AM
Hi,

Depending of field value I'd like to have different context menus for records in DataGrid

How can I recreate already created menu or update existing one?

Now I have this:

Code:
onRowContextMenu: function(e, rowIndex, rowData){
e.preventDefault();
$(this).datagrid('unselectAll');
$(this).datagrid('selectRow', rowIndex);
if (!$('#tmenu').length){
var tmenu = $('<div id="tmenu" style="width:120px;"></div>').appendTo('body');
$('<div />').html('Edit').appendTo(tmenu);
$('<div />').html('Import').appendTo(tmenu);
$('<div />').html('Lock').appendTo(tmenu);
$('<div />').html('Unlock').appendTo(tmenu);
$('<div />').html('Activate').appendTo(tmenu);
$('<div />').html('Deactivate').appendTo(tmenu);
$('<div />').html('Clear').appendTo(tmenu);
tmenu.menu({
onClick: function(item){
// do smth
}
});
}
if(rowData.state=='Open'){
// update menu for record with is 'Open'
}
if(rowData.state=='Locked'){
// update menu for record with is 'Locked'
}
if(rowData.state=='Inactive'){
// update menu for record with is 'Inactive'
}
$('#tmenu').menu('show', {
left:e.pageX,
top:e.pageY
});
}