我一直在使用w2ui和网格,我似乎无法弄清楚如何获取上下文菜单项的id。我希望能够为每个上下文菜单项分配不同的功能,但无法弄明白!我总是遇到jquery的烦恼,这次也没有什么不同!
我目前正在抓取所有行数据。已经在菜单项上直接尝试了onMenuClick
和onClick
而没有运气。这是我目前所写的内容。
$('#grid').w2grid({
name: 'grid',
header: 'List of Names',
show: {
toolbar: true,
footer: true
},
records: users,
columns: [
{ field: 'recid', caption: 'ID', size: '50px', sortable: true, attr: 'align=center' },
{ field: 'lname', caption: 'Last Name', size: '30%', sortable: true, resizable: true },
{ field: 'fname', caption: 'First Name', size: '30%', sortable: true, resizable: true },
{ field: 'email', caption: 'Email', size: '40%', resizable: true },
{ field: 'sdate', caption: 'Start Date', size: '120px', resizable: true },
],
menu: [
{ id: 1, text: 'Select Item', icon: 'fa fa-star', onMenuClick: function(event){
alert("button 1 clicked!");
} },
{ id: 2, text: 'View Item', icon: 'fa fa-camera' },
{ id: 4, text: 'Delete Item', icon: 'fa fa-minus' }
],
searches: [
{ field: 'lname', caption: 'Last Name', type: 'text' },
{ field: 'fname', caption: 'First Name', type: 'text' },
{ field: 'email', caption: 'Email', type: 'text' },
],
sortData: [{ field: 'recid', direction: 'ASC' }],
onMenuClick: function(target, event) {
var record = this.get(event.recid);
var id = event.target;
var menuid = target.id //trying to get context menu id
var fname = record.fname;
var lname = record.lname;
var email = record.email;
event.onComplete = function () {
alert("ID:" + id + "First Name: " + fname + "Last Name: " + lname + "Email: " + email +"menu ID: " + menuid);
}
}
});
非常感谢任何帮助!
答案 0 :(得分:0)
想出来!值得庆幸的是没有花太多时间,但为了从上下文菜单项中提取ID,您可以使用以下内容:
var menuid = event.menuItem.id;