【问题标题】:jqGrid Selected RowjqGrid 选定行
【发布时间】:2016-09-20 19:45:26
【问题描述】:

在 jqGrid 中使用内联编辑时,我无法选择正确的行。无论我单击哪一行,都会选择最后一行,然后每次单击都会选择上面的行。选择所有行后,我可以单击并选择任何行。这是我的代码:

我正在使用 jqGrid 4.4.4

 //url for inline edit
    editurl: "/Transactions/Modify",
    //event for inline edit

    onSelectRow: function (currentSelectedRow) {
        if (currentSelectedRow) { // && currentSelectedRow != $.lastSelectedRow
            //save changes in row 
            $('#grid').jqGrid('saveRow', $.lastSelectedRow, false);
            $.lastSelectedRow = currentSelectedRow;
        }


        currentSelectedRow,

    myEditParam = {
    keys: true,
    oneditfunc: function (id) { currentSelectedRow = id; },
    afterrestorefunc: function (id) { currentSelectedRow = undefined; }
    };

【问题讨论】:

  • 您的代码使用saveRow 而不是editRow。您尝试实施什么行为?我建议您验证您是否正确填写了 rowid。 $.lastSelectedRow 的使用看起来也很可疑。如果页面上有多个网格,则此类代码将不起作用。 jqGrid 将编辑行的id自动保存在savedRow 参数中,该参数是带有rowids 的数组。查看来自the answer 的代码,其中使用了beforeSelectRowonSelectRow 回调。这就是我向你推荐的方式。它也应该在 jqGrid 4.4.4 中工作。
  • 谢谢奥列格。我只是想根据用户单击的位置在编辑时选择正确的行。这应该是内置的功能。我很困惑为什么它不起作用。
  • 我再说一遍,典型的错误可能是错误的 rowids。换句话说,原因可能是在填充网格时而不是在编辑时。检查网格上的 rowid。请参阅the picture 和描述以获得更多理解。

标签: javascript jquery jqgrid


【解决方案1】:

这是因为第一列没有 ID 数据。重新排列列或制作第一个隐藏的 ID 列。

【讨论】:

    猜你喜欢
    • 2011-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-02
    • 2014-12-07
    • 2015-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多