试图找到一个答案,根据行索引删除dojo EnhancedGrid的一行。
请查找增强网格。
var dataStore = new ObjectStore({objectStore: objectStoreMemory});
// grid
grid = new EnhancedGrid({
selectable: true,
store: dataStore,
structure : [ {
name : "Country",
field : "Country",
width : "150px",
reorderable: false,
editable : true
}, {
name : "Abbreviation",
field : "Abbreviation",
width : "120px",
reorderable: false,
editable : true
}, {
name : "Capital",
field : "Capital",
width : "100%",
reorderable: false,
editable : true
}, {
label: "",
field: "Delete",
formatter: deleteButton
}],
rowSelector: '20px',
plugins: {
pagination: {
pageSizes: ["10", "25", "50", "100"],
description: true,
sizeSwitch: true,
pageStepper: true,
gotoButton: true,
maxPageStep: 5,
position: "bottom"
}
}
}, "grid");
grid.startup();
删除按钮脚本如下所示:
function deleteButton(id) {
var dBtn1 = "<div data-dojo-type='dijit/form/Button'>";
var dBtn2 = "<img src='delete.png' onclick='javascript:removeItem()' alt='" + id + "'";
dBtn = dBtn1 + dBtn2 + " width='18' height='18'></div>";
return dBtn;
}
这是我的问题:每行末尾都有一个删除按钮,点击此按钮时,应删除同一行。
谁能告诉我如何根据行索引删除行?
2条答案
按热度按时间tuwxkamq1#
如果要以编程方式添加(删除)数据,则只需从基础数据存储区中添加(删除)数据。由于DataGrid是“DataStoreAware”,因此对存储区所做的更改将自动反映在DataGrid中。
https://dojotoolkit.org/reference-guide/1.10/dojox/grid/example_Adding_and_deleting_data.html
dojox/grid有一个属性
selection
和方法getSelected()
来获取选中的项目。在文档中的示例中,它是通过以下方式实现的:希望能有所帮助。
4dbbbstv2#
解决方案是这样的:按钮的onClick将运行的方法序列是removeItem()和onRowClick事件
1〉设置单击按钮时的“deleteButtonFlag”。
2〉删除项目