2014-10-04 39 views
0

我找不到任何解决方案。 我想从本地数组中加载我的数据。当我在数据类型不同的网格中使用相同的设置:json,从服务器,一切工作正常。jqGrid - 数据类型:本地(包括jsFiddle)排序不会工作

但在这里我需要一个本地数组,我使用数据选项。阵列格式:

[[x,y,z], ...] 

的jsfiddle: http://jsfiddle.net/7osga648/

CODE:

$("#datagrid1").jqGrid({ 
     datatype:'local',height:350,width:400,gridview:true,rownumbers:true,rowNum:1000,viewrecords:true, 
     colNames:["time","col1","col2"], 
     colModel:[ 
     {name:'time',width:150,resizable:false,sorttype:'date',datefmt:"d/m/Y H:i:s"}, 

     {name:'f1',width:100,resizable:false,sorttype:'number'}, 
     {name:'f2',width:100,resizable:false,sorttype:'number'}], 
     data:[["03/10/2014 20:46:27","60.8","2.5"],["03/10/2014 21:01:39","58.3","0.1"],["03/10/2014 21:16:51","61.3","3.4"],["03/10/2014 21:32:05","58.9","0.6"],["03/10/2014 21:47:18","58.7","0.8"],["03/10/2014 22:02:32","58.2","0.0"],["03/10/2014 22:17:45","61.9","3.8"],["03/10/2014 22:32:58","58.4","0.1"],["03/10/2014 22:48:11","60.0","2.1"],["03/10/2014 23:03:22","61.2","3.4"],["03/10/2014 23:18:34","62.0","3.8"],["03/10/2014 23:33:47","58.6","0.2"],["03/10/2014 23:49:00","58.4","0.2"],["04/10/2014 00:04:14","58.1","0.2"],["04/10/2014 00:19:28","58.1","0.2"],["04/10/2014 00:34:40","61.8","3.9"],["04/10/2014 00:49:51","58.9","0.6"],["04/10/2014 01:05:03","58.2","0.1"],["04/10/2014 01:20:16","61.2","3.4"],["04/10/2014 01:35:28","59.2","0.9"],["04/10/2014 01:50:40","58.4","0.1"],["04/10/2014 02:00:04","0","0"],["04/10/2014 02:05:52","61.8","3.7"],["04/10/2014 02:21:04","62.9","3.7"],["04/10/2014 02:36:15","63.1","3.5"],["04/10/2014 02:51:27","63.7","3.5"],["04/10/2014 03:06:40","60.1","0.0"],["04/10/2014 03:21:53","63.1","3.1"]], 
     localReader:{repeatitems:true,cell:""}, 
     caption:"sorting not working. click on col header" 
    }); 

尝试点击列标题,看到什么也没有发生。

有什么想法?

回答

1

我发布了错误修正here。修改后的演示“jsfiddle.net/7osga648/4/”直接使用新功能。有关更多信息,请参阅the answer

+0

哇。无法猜测这将是一个错误。我的意思是,找出这样的错误(本地数据)听起来很简单。我认为我的“localReader”设置是错误的。所以我该怎么做?我应该如何替换源代码中的行,并且要缩小整个代码?由于我创建了一个自定义构建,所以我不想下载您的固定版本(完整的库对我来说太大了,例如,我不需要treegrid)。顺便说一句,我不明白你在小提琴上所做的所有改变。谢谢(你的)信息。 – user3599803 2014-10-04 20:13:55

+0

@ user3599803:最简单的解决方法 - 您应该更改输入数据的格式。而不是'[“2014年3月10日20:46:27”,“60.8”,“2.5”]'你应该使用'{time:“2014年10月10日20:46:27”,f1:“60.8 “,f2:”2.5“}'。您应该删除'localReader'选项。修改后的演示程序只是使用'normalizeData'函数,它根据'colModel'将每个项目添加**命名属性**('time','f1','f2')。所以你可以改变输入数据的格式,或者按照我的演示去掉'data'参数,并使用'onInitGrid'设置'data'并调用'normalizeData'('orderedCols'和'reader')。 – Oleg 2014-10-04 21:08:34

+0

好吧,对我来说比对缩小的代码搞乱更容易。非常感谢你。 – user3599803 2014-10-04 21:35:46