Javascript 在DojoDataGrid中添加一行
努力找到一点易于理解的代码 如何在DojoDataGrid(版本1.4.2)中添加行并清除所有行。假设数据是2列,带有customerID和address 我正在使用Javascript 在DojoDataGrid中添加一行,javascript,datagrid,dojo,Javascript,Datagrid,Dojo,努力找到一点易于理解的代码 如何在DojoDataGrid(版本1.4.2)中添加行并清除所有行。假设数据是2列,带有customerID和address 我正在使用 dojo.data.ItemFileWriteStore 将值存储在中,但仍然不确定该如何使用 不会那么难的 干杯。您可以使用grid.store从网格中获取数据存储引用,然后您可以使用store.newItem()在存储中创建新项目。此新项将作为新行添加到网格中。例如,store.newItem({customerID:1,地
dojo.data.ItemFileWriteStore
将值存储在中,但仍然不确定该如何使用
不会那么难的
干杯。您可以使用
grid.store
从网格中获取数据存储引用,然后您可以使用store.newItem()
在存储中创建新项目。此新项将作为新行添加到网格中。例如,store.newItem({customerID:1,地址:“某处”})
要清除所有行,您可以循环数据存储中的所有项并使用
deleteItem()
删除所有项,或者使用数据网格中的内部函数\u clearData()
删除所有行,或者使用setStore()
为网格设置新的空存储。我更喜欢使用空存储来重置网格。我已经完成了一个关于此的示例。。。代码在这里
上面的答案是正确的,但您还需要在写入存储上调用
save()
,以“提交”更改。保存时,使用存储的小部件(例如datagrid)将刷新自身
另外,newItem()
返回刚创建的新项,因此如果不想将对象传递给newItem
只需修改其返回值,然后save()
存储
伪代码:
var i = store.newItem({});
store.setValue(i,"newattribute1","new value");
store.setValue(i,"newattribute2","new value 2");
store.save();
告诉您如何使用newItem()
,setValue()
,以及save()
您应该使用setStore(new ItemFileWriteStore())
,而不是deleteItem,但我怀疑在执行此操作时存在内存泄漏,请小心。这将创建一个新的空白存储,用于网格
var i = store.newItem({});
store.setValue(i,"newattribute1","new value");
store.setValue(i,"newattribute2","new value 2");
store.save();