Javascript SlickGrid无法删除添加的行,但只能删除现有行。我做错了什么?
以下是我添加行的代码:Javascript SlickGrid无法删除添加的行,但只能删除现有行。我做错了什么?,javascript,jquery,slickgrid,Javascript,Jquery,Slickgrid,以下是我添加行的代码: grid.onAddNewRow.subscribe(function (e, args) { var item = args.item; id=id+1; item["id"] = "id_"+id; grid.invalidateRow(data.length); data.push(item); dataView.beginUpdate(); dataView.endUpdate(); grid.upd
grid.onAddNewRow.subscribe(function (e, args) {
var item = args.item;
id=id+1;
item["id"] = "id_"+id;
grid.invalidateRow(data.length);
data.push(item);
dataView.beginUpdate();
dataView.endUpdate();
grid.updateRowCount();
grid.render();
});
if ((event.which == 46)) {
$(".slick-cell.selected").parent().each(function() {
var item = dataView.getItem($(this).attr("row"));
var rowid = item.id;
dataView.deleteItem(rowid);
grid.invalidate();
grid.render();
});
}
下面是我删除一行的代码:
grid.onAddNewRow.subscribe(function (e, args) {
var item = args.item;
id=id+1;
item["id"] = "id_"+id;
grid.invalidateRow(data.length);
data.push(item);
dataView.beginUpdate();
dataView.endUpdate();
grid.updateRowCount();
grid.render();
});
if ((event.which == 46)) {
$(".slick-cell.selected").parent().each(function() {
var item = dataView.getItem($(this).attr("row"));
var rowid = item.id;
dataView.deleteItem(rowid);
grid.invalidate();
grid.render();
});
}
这适用于已经存在的行,但不适用于添加的行。由于某些原因,项
变量对于新行是未定义的。我做错了什么
编辑
谢谢你,锡!所以我有了一个解决办法:
grid.onAddNewRow.subscribe(function (e, args) {
var item = args.item;
id=id+1;
item["id"] = "id_"+id;
data.push(item);
dataView.beginUpdate();
dataView.setItems(data);
dataView.endUpdate();
});
if((event.which==46)){
var rows=grid.getSelectedRows();
对于(变量i=0,l=rows.length;i
您似乎在代码中做了很多对我来说没有意义的事情:
在onAddNewRow处理程序中,您是:
旁注:您的代码似乎包含多余的
}
括号。已编辑的代码。我的错误。在我的代码中没有这样的错误