Forum


17:02

17/01/2013

I'm reading a parent-child table and trying to represent it with jqGrid with this code….
var subgrid_table_id, pager_id;
subgrid_table_id = subgrid_id+"_t";
pager_id = "p_"+subgrid_table_id; $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
jQuery("#"+subgrid_table_id).jqGrid(
{ url:"?data&id="+row_id,
datatype: "json",
colNames:['Status','Name'],
colModel:[
{name:'status',index:'status', width:55},
{name:'name',index:'name', width:90},
],
rowNum:20,
rowList:[20, 40, 100],
pager: pager_id,
sortname: 'id',
viewrecords: true,
sortorder: "asc",
height: '100%',
multiselect: true,
subGrid: true,
subGridRowExpanded: subgrid
});
jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false})
}
jQuery("#jsonmap").jqGrid(
{ url:'?data',
datatype: "json",
colNames:['Status','Name'],
colModel:[
{name:'status',index:'status', width:55},
{name:'name',index:'name', width:90},
],
rowNum:20,
rowList:[20, 40, 100],
pager: '#pjmap',
sortname: 'id',
viewrecords: true,
sortorder: "desc",
jsonReader: { repeatitems : false, id: "0" },
caption: "JSON Mapping",
height: '100%',
multiselect: true,
subGrid: true,
subGridRowExpanded: subgrid
});
jQuery("#jsonmap").jqGrid('navGrid','#pjmap',{edit:false,add:false,del:false});
The idea is made reculsive subgrid with unlimited levels.
The man level works ok, but if I try to go down, fails.
SCRIPT5007: Unable to get value of the property '0': object is null or undefined
jquery.jqGrid.src.js, line 154 character 3
The error is raised in this funtion
getAccessor : function(obj, expr) {
17:46

17/01/2013

After some clean up the code works.
Something was wrong in the subgrid options.
jQuery(document).ready(function($) {
var commonOptions = {
datatype: "json",
colNames:['Status','Name'],
colModel:[
{name:'status',index:'status', width:55},
{name:'name',index:'name', width:90},
],
rowNum:20,
rowList:[20, 40, 100],
pager: '#pjmap',
sortname: 'id',
viewrecords: true,
sortorder: "desc",
jsonReader: { repeatitems : false, id: "0" },
caption: "JSON Mapping",
height: '100%',
multiselect: true,
subGrid: true,
subGridRowExpanded: subgrid
};
function subgrid(subgrid_id, row_id) {
var subgrid_table_id, pager_id;
subgrid_table_id = subgrid_id+"_t";
pager_id = "p_"+subgrid_table_id; $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
jQuery("#"+subgrid_table_id).jqGrid(
$.extend({
url:"?data&id="+row_id,
pager: pager_id}
, commonOptions));
jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:false,del:false})
}
jQuery("#jsonmap").jqGrid(
$.extend({url:"?data"}
, commonOptions));
jQuery("#jsonmap").jqGrid('navGrid','#pjmap',{edit:false,add:false,del:false});
});
Most Users Ever Online: 715
Currently Online:
38 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
OlegK: 1255
markw65: 179
kobruleht: 144
phicarre: 132
YamilBracho: 124
Renso: 118
Member Stats:
Guest Posters: 447
Members: 11373
Moderators: 2
Admins: 1
Forum Stats:
Groups: 1
Forums: 8
Topics: 10592
Posts: 31289
Newest Members:
, razia, Prankie, psky, praveen neelam, greg.valainis@pa-tech.comModerators: tony: 7721, Rumen[Trirand]: 81
Administrators: admin: 66