如何以格式 x e y(作为 10 的幂)对列中的数字进行正确排序
How to sort numbers properly in column in format x e y (as power of 10)
我将数字表示为 10 的幂,例如 5e6 (5 000 000)、4e4 (40 000)。
有没有一种优雅的方法可以根据它们的值在 jqgrid 中对它们进行正确排序?
我有一个邪恶的想法来计算隐藏列中的值,并在 x e y
列的排序上对隐藏的计算列执行排序,但这似乎是错误的。
欢迎任何想法,它可能会帮助我弄清楚一些事情。
你有两个解决方案。
1.You 可以使用 sorttype 作为函数。函数接受值和 return 值。可以参考Guriddo文档here(看table中的这个参数)
假设您有 xey 格式的值,其中 x 是底数,y 是指数,那么
...
{ name: 'power', width: 100, sorttype : function(a) { var test = a.split("e"); return Math.pow(test[0],test[1]);} },
...
2.Your 第二个选项是使用 sortfunc 来定义自定义排序函数。使用方法看上面的link
更新 抱歉,我错过了你的幂是 10,所以你的代码应该更改为:parseFloat(test[0])*(Math.pow(10,test[1])
,但我想你明白了。
我将数字表示为 10 的幂,例如 5e6 (5 000 000)、4e4 (40 000)。 有没有一种优雅的方法可以根据它们的值在 jqgrid 中对它们进行正确排序?
我有一个邪恶的想法来计算隐藏列中的值,并在 x e y
列的排序上对隐藏的计算列执行排序,但这似乎是错误的。
欢迎任何想法,它可能会帮助我弄清楚一些事情。
你有两个解决方案。
1.You 可以使用 sorttype 作为函数。函数接受值和 return 值。可以参考Guriddo文档here(看table中的这个参数) 假设您有 xey 格式的值,其中 x 是底数,y 是指数,那么
...
{ name: 'power', width: 100, sorttype : function(a) { var test = a.split("e"); return Math.pow(test[0],test[1]);} },
...
2.Your 第二个选项是使用 sortfunc 来定义自定义排序函数。使用方法看上面的link
更新 抱歉,我错过了你的幂是 10,所以你的代码应该更改为:parseFloat(test[0])*(Math.pow(10,test[1])
,但我想你明白了。