无法使用 Ext JS 4 中的列标题对网格行进行排序
Unable to sort Grid rows using column headings in Ext JS 4
我在 Ext JS 中有一个现有的 Web 应用程序,我无法在其中按升序和降序进行排序。当我单击列标题时,可以选择排序,但数据实际上并没有排序,它似乎只是按相同的顺序刷新。
在Chrome的控制台中,我可以看到写了如下日志:
Request result: true
每次我尝试单击列标题 (例如名字) 时都会出现此消息,它会将我引导至“afterRequest”功能。
查看代码:
var grid = Ext.create('Ext.grid.Panel', {
stateId: 'stateGrid',
defaultSortable: true,
enableColLock: true,
enableCtxMenu: false,
columns: [{
text: 'Account No',
width: 90,
dataIndex: 'accountNum',
sortable: true
},
// More column definitions here...
}]
}],
title: 'Accounts',
height: 700,
width: 1300,
store: Ext.getStore('accounts.AccountsListStore'),
renderTo: Ext.getBody(),
viewConfig: {
stripeRows: true
}
});
属性中包含每个列的 "sortable: true",以及 "defaultSortable: true"整个网格。
至于控制器,这里没有太多代码,除了调用服务器的函数,该函数请求 JSON 格式的相关帐户数据,并且是应该把它加载到商店。正如您在上面的屏幕截图中看到的,它似乎正在加载正确的数据。
我只使用了 Ext JS 4.0.7 2 天,之前没有 Javascript 知识,正确方向的观点将非常有用。谢谢。
我现在已经设法解决了这个问题。问题出在我的帐户商店中。
以下代码阻止排序正常工作。
buffered: true,
pageSize: 200,
remoteSort: true,
purgePageCount: 0
因为它实际上并没有计算任何东西,实际上只是从服务器检索数据,所以我关闭了 buffering/remote 排序。
我的代码现在看起来像这样,并且排序完美无缺:
buffered: false,
remoteSort: false
希望这对遇到同样问题的其他人有所帮助。
我在 Ext JS 中有一个现有的 Web 应用程序,我无法在其中按升序和降序进行排序。当我单击列标题时,可以选择排序,但数据实际上并没有排序,它似乎只是按相同的顺序刷新。
在Chrome的控制台中,我可以看到写了如下日志:
Request result: true
每次我尝试单击列标题 (例如名字) 时都会出现此消息,它会将我引导至“afterRequest”功能。
查看代码:
var grid = Ext.create('Ext.grid.Panel', {
stateId: 'stateGrid',
defaultSortable: true,
enableColLock: true,
enableCtxMenu: false,
columns: [{
text: 'Account No',
width: 90,
dataIndex: 'accountNum',
sortable: true
},
// More column definitions here...
}]
}],
title: 'Accounts',
height: 700,
width: 1300,
store: Ext.getStore('accounts.AccountsListStore'),
renderTo: Ext.getBody(),
viewConfig: {
stripeRows: true
}
});
属性中包含每个列的 "sortable: true",以及 "defaultSortable: true"整个网格。
至于控制器,这里没有太多代码,除了调用服务器的函数,该函数请求 JSON 格式的相关帐户数据,并且是应该把它加载到商店。正如您在上面的屏幕截图中看到的,它似乎正在加载正确的数据。
我只使用了 Ext JS 4.0.7 2 天,之前没有 Javascript 知识,正确方向的观点将非常有用。谢谢。
我现在已经设法解决了这个问题。问题出在我的帐户商店中。 以下代码阻止排序正常工作。
buffered: true,
pageSize: 200,
remoteSort: true,
purgePageCount: 0
因为它实际上并没有计算任何东西,实际上只是从服务器检索数据,所以我关闭了 buffering/remote 排序。
我的代码现在看起来像这样,并且排序完美无缺:
buffered: false,
remoteSort: false
希望这对遇到同样问题的其他人有所帮助。