grid的分页功能本身就是对数据库数据分页后的一个数据显示,并可以执行翻页查询其他页的信息。
全部信息则只需要将limit参数设置为数据总条数,pagesize也设置为数据行数。
grid中不设置分页组件是可以直接显示全部信息,url中不设置limit和start参数。
注:数据量太多时不宜全部显示
是你自己做的太复杂了。。。写简单点就好了
//构建数据集ExtonReady(function() {
var store=Extcreate('ExtdataStore', {
//这里的字段名称是自定义的,不一定要和后台返回的一一对应,但是数量要相等,否则后面的将不会显示
fields: ['字段1','字段2','字段3'],
//自动加载数据
autoLoad: true,
proxy: {
type: 'ajax',
url: 'xxx',
reader: {
type: 'json',
//这里的root不是一定要设置的,如果返回的本身就是表格数据,就不需要
root: 'items'
}
}
});
//构建表格
Extcreate('ExtgridPanel', {
store:store,
renderTo: ExtgetBody(),
columns: [{
text: '列名',
dataIndex: '对应store的field,而不是json的字段',
},{
//同上
}]
});
});
代码直接给你吧,看不明白再留言。
var me = this,
vm = megetViewModel(),
store = vmgetStore('drugStore');
storeclearFilter(false);
storefilter([
{
filterFn: function (item) {
return itemget('ItemName')indexOf(value) >= 0 || itemget('ItemId')indexOf(value) >= 0;
}
}
]);
你选的那一行数据,在grid的store中已经储存了,grid每一列都有renderer属性,他的function有固定参数,按顺序value:当前值,metadata,record,rowIndex,colIndex,store,其中record就是当前行的数据recorddata。如果你要想新窗口数据record中没有,就在这个function中写个ajax或重新用一个store再取就是了
renderer: function(v,m,record){
var data = recorddata;
var win = (定义新窗口并赋值)
}
以上就是关于ExtJs中的表格grid(已实现分页功能):获得当前页的数据可以用grid.getStore.getAt(record);全部的内容,包括:ExtJs中的表格grid(已实现分页功能):获得当前页的数据可以用grid.getStore.getAt(record);、ExtJS 解析json数据 动态创建grid表格、ExtJs:grid store 前台数据源,动态查询,模糊查询等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)