html文件,dgrid模糊搜索.html
<div>
<input data-dojo-attach-point="input" type="text" value="" />
<div data-dojo-attach-point="grid"></div>
</div>
js文件,dgrid模糊搜索.js
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",
"dijit/_TemplatedMixin",
"dijit/_WidgetBase",
"dijit/_WidgetsInTemplateMixin",
"dojo/text!html文件路径/dgrid模糊搜索.html"
"dojo/domReady!"
], function(dom, declare, Memory, Observable,
Keyboard, OnDemandGrid, Selection, selector, Pagination, ColumnResizer,
Button, _TemplatedMixin, _WidgetBase, _WidgetsInTemplateMixin, template) {
return declare([_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin], {
templateString : template,
data: [{_index: 1, userName: "haha"}, {_index: 2, userName: "chanhaha"}],
constructor : function() {
this.inherited(arguments);
},
postCreate : function() {
this.inherited(arguments);
this.main();
},
main: function() {
this._setGrid(this.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 : 10,
pagingTextBox : true,
firstLastArrows : true,
loadingMessage : "数据加载中...",
noDataMessage : "暂无数据。"
}, this.grid);
this._grid.startup();
//调用模糊搜索功能。
commom.onQuery(this.input, this._grid, data);
}
});
});
commom.onQuery方法在这里:
http://blog.csdn.net/chanhaha/article/details/40343469