سؤال

I'm fairly new to jqgrid How can I show nested json objects inside a jqgrid as individual fields?? below given is the example of json object

[
 {
"properties":{
 "x":1,
 "y":78093,
 "closeDate":null,
 "
},
"children":[
 {
    "properties":{

       "option":null,
       "type":"",
       "client":"southface",

       "categoryA":[
          "x",
          "w"
       ],
       "facilitiesOther":null,
       "objectId":10,

       "docNo":7897,
       "Provisions":[
          "x",
          "z"
       ],


       "sponsor":"own sponsor",


       "CategoryB":[
          "e",
          "f",
          "g"

       ]

       ]
    },
    "children":null,
    "Type":"test",
    "Id":"10"
 }
  ],
  "objectType":"document",
 "objectId":"89763"
   }
  ]

after fair amount of research I found somewhere that it requires modifying the colmodel Something towards this issue would be very helpful thanks in advance

هل كانت مفيدة؟

المحلول

You should use jsonMap. You should also look at jqGrid wiki and this specific topic. You can try something like this:

colNames:['Children','ID', 'Properties', 'Other','Sponsor'],
colModel: [
    {name:'children',width:100, jsonmap:"children.0", formatter: function (cellvalue) { return cellvalue.children }},
    {name:'objectId',width:100, jsonmap:"children.0", formatter: function (cellvalue) { return cellvalue.objectType }},
    {name:'properties',width:100, jsonmap:"children.0", formatter: function (cellvalue) { return cellvalue.properties.objectId }},
    {name:'other',width:100, jsonmap:"children.0", formatter: function (cellvalue) { return cellvalue.properties.other[0] }},
    {name:'sponsor',width:100, jsonmap:"children.0", formatter: function (cellvalue) { return cellvalue.properties.sponsor }}
    // and so on...
],

This is obviously not the best approach because you'll have to know how many records you have on your JSON and do it manually for each one. Actually, I don't know how you could make it automatically, but as I said, if you look out for jsonMap on jqGrid wiki you'll probably find what you want. Best of luck!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top