Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery jqgrid使用重复项自定义排序_Jquery_Jqgrid - Fatal编程技术网

Jquery jqgrid使用重复项自定义排序

Jquery jqgrid使用重复项自定义排序,jquery,jqgrid,Jquery,Jqgrid,我有一个jQgrid列,它将显示以下示例中的数据 第5页,共10页 第2页,共2页 五分之五 第2页,共10页。。。。etc 我想实现一个自定义排序,它将首先根据“of”之前的数字进行排序,然后对于重复项,它应该使用“of”之后的数字 我使用以下函数实现了主排序 sorttype: function (cellValue, cellObject) { var sortValueArr = cellValue.split(" ");

我有一个jQgrid列,它将显示以下示例中的数据

  • 第5页,共10页
  • 第2页,共2页
  • 五分之五
  • 第2页,共10页。。。。etc

    我想实现一个自定义排序,它将首先根据“of”之前的数字进行排序,然后对于重复项,它应该使用“of”之后的数字
  • 我使用以下函数实现了主排序

    sorttype: function (cellValue, cellObject) {
                            var sortValueArr = cellValue.split(" ");
                            return parseInt(sortValueArr[0]);
                            //return [parseInt(sortValueArr[0]), parseInt(sortValueArr[2])];
                        }
    
    但我坚持要实现重复的二次排序。我用上面的评论行试过了。但它不起作用

    请帮帮我

    所需的输出是

  • 第2页,共2页
  • 第2页,共10页
  • 五分之五
  • 第5页,共10页
  • 提前谢谢。

    好吧,这不是一个很好的答案,但是如果您知道第二个数字的硬最大值,您可以将其作为浮点运行。例如,如果您可以确定第二个数字不会超过1000,那么您可以使用以下公式

    sorttype: function (cellValue, cellObject)
    {
        var sortValueArr = cellValue.split(" ");
        return (parseFloat(sortValueArr[0]) + parseFloat(sortValueArr[2])/1000);
    }
    

    我尝试了一些类似的逻辑,但我每周都在学习算法。我想不出一个表达式来排序这个。。。考虑到最大值为10,数据点为9中的1,数据点为2中的2,这里建议的方法不起作用。。。会给,2分2秒第一,1分9秒。。。而且,我试着扭转结果。。但这种din也适用于实际数据……您只需在浮点上执行标准jqgrid排序。9个中的1给出1.009,而2个中的2给出2.002,依此类推。这不是你得到的吗?