我有一组数据,如下例所示,我想将其加载到网格中。但是,我不确定数据是如何没有名称的。
[[48803,"DSK1","","02200220","OPEN"],[48769,"APPR","","77733337","ENTERED"]]
答案 0 :(得分:5)
您需要的是使用以下localReader
localReader: {
repeatitems: true,
cell: "",
id: 0
}
我为你做了the demo,它展示了它是如何运作的。
更新:我如何才能发现现实并不如the documentation那么好。 localReader的使用可以帮助您使用自定义结构填充网格包含来自data
参数的数据,但是jqGrid的另一部分:本地排序和搜索无法正常工作具有此data
参数的结构。我把它解释为一个bug。作为一种实用的解决方案,我建议您将自定义数据转换为命名对象数组,如
[{id:48803,col2:"DSK1",col3:"",col4:"02200220",col5:"OPEN"},
{id:48769,col2:"APPR",col3:"",col4:"77733337",col5:"ENTERED"}]
名称对应colModel
中的列名。如果您将在表单中使用data
参数,那么在jqGrid中一切都将完美。
更新2 :查看the fixed example的来源,我的意思是明确的。在您的情况下,数据转换可以是以下
var myNewData = [];
for (var i=0,l=mydata.length; i<l; i++) {
var d = mydata[i];
myNewData.push({id:d[0],col2:d[1],col3:d[2],col4:d[3],col5:d[4]});
}
解决方案不像localReader
那样优雅,但它没有任何限制。
答案 1 :(得分:2)