在EXTJS网格中对混合类型的网格列进行排序

时间:2011-01-05 13:45:37

标签: javascript json gridview extjs

我想对extjs列进行排序,我将列类型设置为float并从服务器中排序 我得到的值可以包含“ - ”值,现在网格会发生什么 正在向我显示NaN值而不是 - 并且排序不再有效。

我的要求是创建一个自定义排序,可以根据数字和排序进行排序 然后根据字符串排序。

感谢建议渲染器也不适用于我。

我的Json字符串是:

{metaData:{"totalProperty":"total", "root":"records","fields":[{"header":"Part Number##false","name":"XJE010^VT-007!0","type":"string"},{"header":"Marketing Status##false","name":"STP716^VT-007!0","type":"string"},{"header":"Package##false","name":"XJE016^VT-007!0","type":"string"},{"header":"Automotive Grade##false","name":"STP472^VT-007!0","type":"string"},{"header":"VDSS##false","name":"XJG810^VT-007!0","type":"float"},{"header":"Drain Current (Dc)(I_D) % (A)##false","name":"XJG273^VT-006!0","type":"float"},{"header":"RDS(on) (@VGS=10V) % (Ω)##false","name":"XJG640^VT-006!3","type":"float"},{"header":"Features##false","name":"GNP023^VT-007!0","type":"string"},{"header":"RDS(on) (@4.5 or 5V) % (Ω)##false","name":"XJG640^VT-006!6","type":"float"},{"header":"RDS(on) (@2.7V) % (Ω)##false","name":"XJG640^VT-006!7","type":"float"},{"header":"RDS(on) (@1.8V) % (Ω)##false","name":"XJG640^VT-006!8","type":"float"},{"header":"Free Samples##false","name":"STP0881^VT-007!0","type":"string"},{"header":"Total Gate Charge(Qg) typ ()##true","name":"STP049^VT-002!0","type":"float"},{"header":"Total Power Dissipation(PD) % (W)##true","name":"XJG820^VT-006!0","type":"float"}]},"success":"true", "total":13,"records":[{"XJE010^VT-007!0":"STB80PF55$$/cn/analog/product/67164.jsp","STP716^VT-007!0":"Active","XJE016^VT-007!0":"D2PAK","STP472^VT-007!0":"_","XJG810^VT-007!0":"-55","XJG273^VT-006!0":"80","XJG640^VT-006!3":".018","GNP023^VT-007!0":"-","XJG640^VT-006!6":"-","XJG640^VT-006!7":"-","XJG640^VT-006!8":"-","STP0881^VT-007!0":"No","STP049^VT-002!0":"190","XJG820^VT-006!0":"300"},{"XJE010^VT-007!0":"STD10PF06$$/cn/analog/product/64543.jsp","STP716^VT-007!0":"Active","XJE016^VT-007!0":"IPAK TO-251 TO 252 DPAK","STP472^VT-007!0":"_","XJG810^VT-007!0":"-60","XJG273^VT-006!0":"-10","XJG640^VT-006!3":".2","GNP023^VT-007!0":"-","XJG640^VT-006!6":"-","XJG640^VT-006!7":"-","XJG640^VT-006!8":"-","STP0881^VT-007!0":"No

...

3 个答案:

答案 0 :(得分:0)

根据您选择的Store创建基于/ extended的自定义Store,并覆盖sortData方法以根据需要创建和使用自定义排序函数(请参阅同一对象中的createSortFunction以供参考http://dev.sencha.com/deploy/dev/docs/source/Store.html#method-Ext.data.Store-sort)。

答案 1 :(得分:0)

或者,您可以在加载网格存储之前覆盖排序参数。

答案 2 :(得分:0)

此链接https://dotnetlooker.wordpress.com/2017/11/26/extjs-grid-custom-sort-of-mixed-type-with-hyphen-values/可以为您提供帮助。它提供了一个工作实例和深入的解释。