【问题标题】:jqgrid edit , save and escjqgrid编辑、保存和esc
【发布时间】:2011-02-02 17:07:02
【问题描述】:

在我编辑所选行内的单元格后,当我按 Esc 或输入我的行时,我的行被保存,然后该行仍显示为“选中”,当我再次选择它时更改为常规行。

我的问题是,如果我再次选择此行,它不会在编辑模式下显示。它显示为选中状态,并且在我选择另一行之前,只有当我再次选择该行时,它才会处于编辑模式。

如何解决这个问题,以便保存的行在选中时可以再次编辑? (而不是在之前编辑另一行之后)

【问题讨论】:

  • 我有同样的问题,我会尽力解决你。我会告诉你我的解决方案,但现在我不知道。也许@Oleg 可以帮助我们。他是专家:)

标签: jqgrid


【解决方案1】:

好的,我想我找到了解决方案。 你的 js 网格初始化中有这个 sn-p 代码吗?我敢打赌,是的,因为它在官方 jqGrid 演示中:

onSelectRow: function(id)
{
   if(id && id !== lastsel)
   {
      grid.jqGrid( 'restoreRow', lastsel );
      grid.jqGrid( 'editRow', id, true, null, function(){ grid.trigger('reloadGrid');return true; } );
      lastsel = id;
   }
},

如果是,问题就在这里。如果要编辑实际已编辑的行,则必须编写如下内容:

onSelectRow: function(id)
{
    if(id && id !== lastsel)
    {
        grid.jqGrid( 'restoreRow', lastsel );
        grid.jqGrid( 'editRow', id, true, null, function(){ grid.trigger('reloadGrid');return true; } );
        lastsel = id;
    }
    else if(id && id === lastsel)
        grid.jqGrid( 'editRow', id, true, null, function(){ grid.trigger('reloadGrid');return true; }  );

或者只是将 if 条件更改为仅if (id) {...} },

【讨论】:

    猜你喜欢
    • 2014-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-02
    相关资源
    最近更新 更多