光滑的网格非常好!在断开模式下,用户进行一些更改。工作完成后,更改将保存在服务器上。我想知道是否有一种方便的方法来更新数据库。数据视图包含最新数据,它是否知道自加载以来发生的更改(例如删除的行),还是我们需要自己跟踪更改?
问问题
2899 次
2 回答
2
您可以使用 onCellChanged 事件或自定义 editCommandHandler 将行标记为脏,然后只需进行 Ajax 调用来更新这些行。所有更复杂的同步都取决于您 - SlickGrid 没有任何帮助。
于 2011-06-06T16:06:39.683 回答
0
如果可能,我使用 onCellChanged 事件没有问题。
现在我尝试使用 onSelectedRowsChanged 事件来获取要删除的行的 rowid。
但是, grid.getSelectedRows() 只返回当前页面上的行号。因此,当网格被过滤或不显示第一页时,我在获取 rowid 时遇到了问题。
我想有一些数据集可以管理当前视图,但我找不到它。
那么根据当前视图从行号中检索 rowid 的最佳解决方案是什么?问候
更新:
我终于改变了主意,在 grid.js 中创建了一个函数,该函数返回最后一个选定行的 rowid(不是只允许删除一行的数组)
"getSelectedRowID": getSelectedRowID,
我这样使用:
-> 获取当前行 id
grid.onSelectedRowsChanged = function (e, args) {
currentID = grid.getSelectedRowID();
.....
}
-> 如果按下删除键,则删除该行
grid.onKeyDown = function (e) {
// delete key
if (e.keyCode == 46) {
if (confirm('confirmez-vous la suppression de la ligne : ' + currentID)) {
dataView.deleteItem(currentID);
deletedRowIds.push(currentID);
}
return true;
}
....
于 2011-06-08T08:39:36.507 回答