【问题标题】:jqGrid Cell Editing LocallyjqGrid 单元格在本地编辑
【发布时间】:2010-12-22 20:56:31
【问题描述】:

我正在尝试使用可编辑单元格实现 jqGrid:

var myGrid = $("#mygrid").jqGrid({
            datatype: 'local',
            data: mydata,
            colModel: [
                    { name: 'Serial', width: 1040, editable: true, edittype: 'text' }
                ],
            rowNum: 10,
            rowList: [10, 20, 30],
            pager: '#mypager',
            sortname: 'Serial',
            cellEdit: true,
            viewrecords: true,
            sortorder: "desc",
            onSelectRow: function(id){
                if(id && id!==lastSel){
                    jQuery('#mygrid').restoreRow(lastSel); 
                    lastSel=id; 
                }
                jQuery('#mygrid').editRow(id, true); 
           }
        });
        myGrid.jqGrid('navGrid', '#mypager', { edit: true, add: false, del: false, search: true });

但是,每次我尝试编辑一个单元格时,它都允许我在上面写字,但只要我点击其他行甚至在网格之外,文本就会消失。

另一件事,每次我点击“输入”时,它都会尝试提交一些内容,因为它会显示以下消息: “没有设置网址”。

当然,我只想在“本地”使用这个网格。编辑网格后,用户必须单击 .html 中包含的“提交”按钮,然后我将管理插入到网格中的数据。

谢谢。

【问题讨论】:

    标签: jquery html jqgrid editing


    【解决方案1】:

    为了能够在本地使用cell editing(您使用cellEdit:true),您必须使用cellsubmit:'clientArray' 属性。

    另一方面,你也使用editRow 函数,所以你想使用Inline Editing。为了能够在本地使用Inline Editing,您应该定义editurl:'clientArray'(参见documentation here)。

    除此之外,您还使用myGrid.jqGrid('navGrid', '#mypager', { edit: true, ...}) 启用Form Editing,它没有完整的本地编辑支持。

    我建议您只使用Inline Editing 并将editurl:'clientArray' 包含在您的jqGrid 选项中。 cell editing (cellEdit: true) 和 Form Editing 应该被删除。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-03
      • 1970-01-01
      相关资源
      最近更新 更多