我确定我的问题已在某个地方解决,但我已经研究了一段时间,似乎无法找到我正在寻找的答案。关于JqGrid的问题和问题
- 当使用inlineNav功能时,是否有“删除”选项?我还没有发现任何,所以为了使用它,我必须同时使用
navGrid
和inlineNav
功能创建的网格,就像这样:
$("#attributeEditList").jqGrid({
datatype: "local",
height: 150,
colNames: ['rowid', 'Vendor', 'Category', 'Key', 'Value', 'Flags', 'Status'],
colModel: [
{name: 'rowid', index: 'rowid', hidden: true, key: true},
{name: 'vendorCode', index: 'vendorCode', hidden: true},
{name: 'category', index: 'category', width: 120, editable: true, editrules:{required: true} },
{name: 'key', index: 'key', width: 120, editable: true, editrules:{required: true} },
{name: 'value', index: 'value', width: 200, editable: true, editrules:{required: true} },
{name: 'flags', index: 'flags', width: 80, editable: true, editrules:{required: true, integer: true} },
{name: 'status', index: 'status', hidden: true }
],
sortname: "category",
viewrecords: true,
caption: "Attributes",
rowNum: 20000,
pager: '#attributeEditPager',
editurl: "vendor/ajax/dummy.do",
data: vendor.attributes,
jsonReader : { repeatitems: false }
});
$("#attributeEditList").jqGrid("navGrid", '#attributeEditPager', {
edit: false,
add: false,
del: true,
search: false,
refresh: false,
delfunc: deleteAttribute
}
);
$("#attributeEditList").jqGrid("inlineNav", '#attributeEditPager');
- 有没有什么办法,使严格在客户端对网格进行编辑?我希望我的用户能够进行一些编辑(添加/编辑/删除),然后发布网格中的所有更改,以及网格外部的其他一些表单更改,以原子方式返回到服务器。据我所知,
editurl
参数是必需的,并且实际上必须是有效的url,才能进行编辑。 - 最后,我认为这是我遇到的最大问题,就是在使用
inlineNav
功能时。首先,我点击“添加(+)”按钮添加一行,添加数据,然后点击“保存”按钮。然后,如果再次单击“添加”按钮,将添加新行,但“添加”和“编辑”按钮保持活动状态,而“保存”和“取消”按钮仍处于禁用状态。
如果您对这些问题有任何建议,请告诉我。
关于最后一个问题,是否在连续编辑时触发事件?否则,我将如何知道该行是否处于编辑模式? – pconrey 2012-03-15 23:01:16
另外,为了记录,下面是第二次单击“添加”按钮时发生的错误堆栈的第一部分(来自Chrome中的开发人员工具):
未捕获的TypeError:无法读取属性“name”未定义
$ .jgrid.extend.editRow.each.svr.id
e.extend.each
e.fn.e.each
$ .jgrid.extend.editRow
e.extend.each 的
e.fn.e.each
$ .jgrid.extend.editRow $ .fn.jqGrid ... – pconrey 2012-03-15 23:01:49
@pconrey:您可以使用[$。 jgrid.inlineEdit](https://github.com/tonytomov/jqGrid/blob/v4.3.1/js/grid.inlinedit。js#L35-46)设置任何类似于'oneditfunc'的回调函数,这将在内联编辑开始时调用。您还可以使用[inlineNav](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:inline_editing#inlinenav)选项中的editParams.oneditfunc'和'addParams.addRowParams.oneditfunc'。 。您可以尝试从[github](https://github.com/tonytomov/jqGrid/)使用当前版本的jqGrid。它包含一些重要的错误修复。 – Oleg 2012-03-15 23:10:56