2013-01-18 48 views
1

我甚至从jqGrid的阅读documentation后驾车狂用这个..的jqGrid - 编辑:真不工作

,之前使用该网格有(成功),现在我无法编辑单元格。

我甚至注释的代码下面几行离开它的一个重要组成部分:

function initGridProjectDetail(options) { 
    $("#" + options.table).jqGrid({ 
     url: options.dataUrl, 
     colModel: [ 
      {name: 'CategoryName', label: 'Kategorie', editable: true } 
     ], 
     jsonReader: { id: 'Id' } 
    }); 
} 

还有什么能不能够编辑该小区的原因是什么?谢谢您的帮助。

注意:网格呈现,有内容,甚至排序工作。唯一缺少的是“可编辑”功能。

+0

请张贴您的inlineNav方法。还要确保之前调用了navGrid方法。 http://www.trirand.com/jqgridwiki/doku.php?id=wiki:inline_editing#inlinenav – Kris

+0

我正在使用示例:http://www.trirand.com/jqgridwiki/doku.php?id=wiki: inline_editing#示例,并且他们不使用inlineNav方法。没有它,不应该这样工作吗? – Dryadwoods

+0

您应该决定要使用哪种[编辑模式](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:jqgriddocs#editing):单元格编辑,内联编辑或表单编辑。网格中选择的编辑模式有不同的选项。如何让用户激活编辑单元格或行:单击/双击单元格/行,选择行并单击工具栏上的按钮('navGrid'或'inlineNav'methods)或内联按钮('格式化程序:“操作”)等等。在编辑单元格的情况下,您需要使用'cellEdit:true'选项。 – Oleg

回答

0

我认为你应该只使用jQuery(this)而不是jQuery("#" + options.table)。您可以在每个回调中使用$(this)jQuery(this)。您应另外验证您是否定义了变量lastsel2

+0

@Dryadwoods:不客气! – Oleg

0

这完全是我的错。

onSelectRow: function (id) { 
      if (id && id !== lastsel2) { 
       jQuery("#" + options.table).restoreRow(lastsel2); 
       jQuery("#" + options.table).editRow(id, true); 
       lastsel2 = id; 
      } 
     }, 

从示例源的复制粘贴我离开了错误的表ID。 我很欣赏奥列格的最后一条评论,因为这让我看到了这一点。请写一个答案接受它作为解决方案。

+0

如果您发布有关该问题的其他信息,请*附上您问题的文本*。只有当你自己解决了问题并且希望与其他人分享时,你才应该自己写答案。你再多发一次代码。你在哪里定义'lastsel2'和'options'等等?顺便说一句,你应该更好地使用'jQuery(this)'而不是'jQuery(“#”+ options.table)''。 – Oleg

+0

奥列格,请为这个问题添加一个新的答案,并写下你想要的任何内容,我的问题就像我说的那样解决(因为你的评论),因为我不能选择一个评论作为有效的答案,那么请按照我说。然后我会选择它作为接受的答案。 – Dryadwoods