我知道分页需要传递给控制器的启动和限制参数......但是我还使用了需要传递的更多参数......这是'STATE'和'ID'...我试过baseParams ,params ......什么都行不通......这是我的商店
this.myStore = Ext.create('Ext.data.Store', {
scope: this,
storeId: 'myStore',
fields: [
{ name: 'State', type: 'string' },
{ name: 'ID', type: 'string' }
],
proxy: {
type: 'ajax',
scope: this,
extraParams: { State: '', ID: '', start: 1, limit: 200 },
url: 'myControl/getRecords',
reader: {
type: 'json',
totalProperty: 'count',
root: 'data'
}
},
autoLoad: true
});
我知道我不必使用start和limit作为参数,但是将它们取出也无济于事。
这是我的c#方法
public string getRecords(string State, string ID, int start, int limit)
答案 0 :(得分:2)
你试过这个吗?
this.myStore = Ext.create('Ext.data.Store', {
scope: this,
storeId: 'myStore',
fields: [
{ name: 'State', type: 'string' },
{ name: 'ID', type: 'string' }
],
proxy: {
type: 'ajax',
scope: this,
extraParams: { State: '', ID: '' },
url: 'myControl/getRecords',
reader: {
type: 'json',
totalProperty: 'count',
root: 'data'
}
},
autoLoad: true
});
原因是分页栏进行分页,因此您不需要自己设置分页。你这样做的方式将覆盖商店提供的分页参数(分页栏)
请注意,您可以通过调用
覆盖您的extraParam值myStore.getProxy().setExtraParam('State', 'AnyValue');
答案 1 :(得分:0)
开始是默认的开始页面,限制是每页的行数
this.myStore = Ext.create('Ext.data.Store', {
scope: this,
storeId: 'myStore',
fields: [
{ name: 'State', type: 'string' },
{ name: 'ID', type: 'string' }
],
proxy: {
type: 'ajax',
scope: this,
extraParams: { State: '', ID: '' },
url: 'myControl/getRecords',
reader: {
type: 'json',
totalProperty: 'count',
root: 'data,
start:0,
limit: 25
}
},
autoLoad: true
});