Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jqgrid向行添加附加属性_Javascript_Jquery_Jqgrid_Contextmenu - Fatal编程技术网

Javascript jqgrid向行添加附加属性

Javascript jqgrid向行添加附加属性,javascript,jquery,jqgrid,contextmenu,Javascript,Jquery,Jqgrid,Contextmenu,我想为我的网格使用contextmenu,但我有一个特殊情况,对于每一行,根据它的一个[或多个]字段值,我想显示或隐藏一些contextmenu项 我知道在绑定contextmenu和show\hide items时,我可以获得右键单击的行甚至rowId,如下所示: jQuery(".jqgrow", "#ContextMenuGrid").contextMenu('myMenu1', { bindings: { 'edit': function(t) {

我想为我的网格使用contextmenu,但我有一个特殊情况,对于每一行,根据它的一个[或多个]字段值,我想显示或隐藏一些contextmenu项

我知道在绑定contextmenu和show\hide items时,我可以获得右键单击的行甚至rowId,如下所示:

jQuery(".jqgrow", "#ContextMenuGrid").contextMenu('myMenu1', {
        bindings: {
            'edit': function(t) {
                editRow();
            },
            'add': function(t) {
                addRow();   
            },
            'del': function(t) {
                delRow();
            }
        },
        onContextMenu : function(event, menu)
                        {
                        var rowId = $(event.target).parent("tr").attr("id")
                        var grid = $("#ContextMenuGrid");
                        grid.setSelection(rowId);                                    

                        return true;                                    

                        }
    });             
}
现在我想知道是否有办法向jqgrid行添加额外的属性,比如“id”,在这样的情况下可以检索到该属性来决定

{
"page":1,
"total":83,
"records":830,
"rows":[{"data-custom-data":"data","id":"11067","cell":[...]}]
}

我的代码可能与上面的代码类似,或者…

您没有包含您使用的jqGrid的定义,我不知道您使用的
jsonReader
。所以我不知道您将行的
“数据自定义数据”:“数据”
保存在哪里。无论如何,我认为您可以在
rowid
上获得保存的数据库

来自
绑定的所有操作('add'、'edit'、'del')的
t
参数(触发器)具有
id
属性。所以你的代码可以

...
bindings: {
    'edit': function(t) {
        editRow(t.id);
    },
....