如何在jQgrid中使用rowid和列名设置行数据

如何在jQgrid中使用rowid和列名设置行数据,jqgrid,jqgrid-asp.net,jqgrid-php,jqgrid-formatter,jqgrid-inlinenav,Jqgrid,Jqgrid Asp.net,Jqgrid Php,Jqgrid Formatter,Jqgrid Inlinenav,我在jqgrid Actions列中使用下面的代码添加了一个自定义图标。单击cutom图标时,将打开一个带有文本区域、保存和关闭按钮的弹出窗口。当我单击Save按钮时,我想将在textarea中输入的文本保存到jQgrid中的隐藏字段列中。我尝试了“setRowData”和“setCell”属性,但没有任何效果。我是不是遗漏了什么 afterInsertRow: function (rowid, rowdata, rowelem) { $(this).trigge

我在jqgrid Actions列中使用下面的代码添加了一个自定义图标。单击cutom图标时,将打开一个带有文本区域、保存和关闭按钮的弹出窗口。当我单击Save按钮时,我想将在textarea中输入的文本保存到jQgrid中的隐藏字段列中。我尝试了“setRowData”和“setCell”属性,但没有任何效果。我是不是遗漏了什么

afterInsertRow: function (rowid, rowdata, rowelem) {
                $(this).triggerHandler("afterInsertRow.jqGrid", [rowid, rowdata, rowelem]);
                //...//
                //Start: Code for Notes Icon in Actions column
                var iCol = getColumnIndexByName(grid, 'actions');
                $(this).find(">tbody>tr#" + rowid + ">td:nth-child(" + (iCol + 1) + ")")
                        .each(function () {
                            $("<div>", {
                                title: "Custom",
                                mouseover: function () {
                                    $(this).addClass('ui-state-hover');
                                },
                                mouseout: function () {
                                    $(this).removeClass('ui-state-hover');
                                },
                                click: function (eve) {
                                    $("#change_dialog").dialog({
                                        buttons: {
                                            'Save': function () {
                                                var selRow = $(eve.target).closest("tr.jqgrow").attr("id");

                                                var txtNotes = $("#mytext").val();
                                                $("#gridJQ").setRowData(selRow, { 'notesHidden': txtNotes });

                                                $("#gridJQ").jqGrid('setCell', selRow, 'notesHidden', txtNotes);
                                                $("#gridJQ").jqGrid('setRowData', selRow, 'notesHidden', txtNotes);
                                                $(this).dialog("close");
                                            },
                                            'Close':function() {
                                                $(this).dialog("close");
                                            }
                                        }
                                    });

                                    return false;
                                }
                            }
                            ).css({ "margin-right": "5px", float: "left", cursor: "pointer" })
                                .addClass("ui-pg-div ui-inline-custom")
                                .append('<span class="ui-icon ui-icon-document"></span>')
                                .prependTo($(this).children("div"));
                        });

而不是使用此代码获取行

var selRow = $(eve.target).closest("tr.jqgrow").attr("id");
尝试更直接的方法,例如

var selRow = $("#gridJQ").jqGrid('getGridParam', 'selrow');
甚至只是var selRow=rowid

这有帮助吗