因为 经常需要经常使用到dgrid表格,所以抽出来方便以后直接复制粘贴用。
define([
"dojo/dom",
"dojo/_base/declare",
"dojo/store/Memory",
"dojo/store/Observable",
"dgrid/Keyboard",
"dgrid/OnDemandGrid",
"dgrid/Selection",
"dgrid/selector",
"dgrid/extensions/Pagination",
"dgrid/extensions/ColumnResizer",
"dijit/form/Button"
"dojo/domReady!"
], function(dom, declare, Memory, Observable,
Keyboard, OnDemandGrid, Selection, selector, Pagination, ColumnResizer, Button) {
var data = [{_index: 1, userName: "haha"}, {_index: 2, userName: "chanhaha"}];
var obj = {
init: function() {
obj._setGrid(data);
},
_setGrid : function(data) {
var renderCell = function(object, data, cell) {
new Button({
label: "renderCell",
onClick: function () {
}
}, cell.appendChild(document.createElement("div")));
};
var layout = {
col1 : selector({resizable : false, width: 40}),
name : {label: "用户名", resizable : false},
todo : {label: "操作", renderCell: renderCell, resizable : false, width: 210}
};
this._store = new Memory({data : data});
this._store = new Observable(this._store);
this._grid = new (declare([OnDemandGrid, Selection, Keyboard, Pagination, ColumnResizer]))({
columns : layout,
store : this._store,
allowSelectAll: true,
style : "",
selectionMode : "toggle",
pagingLinks : 2,
rowsPerPage : 4,
pagingTextBox : true,
firstLastArrows : true,
loadingMessage : "数据加载中...",
noDataMessage : "暂无数据。"
}, dom.byId("zhengzeGrid"));
this._grid.startup();
}
};
return obj;
});