Column Reading Data as [object Object]
Column Reading Data as [object Object]
zgoforth
Posts: 493Questions: 98Answers: 2
I am using a SharePoint Person/Group field pulling through a rest API to try and populate to my column as the main dataSrc for rowGroup, so I am curious if that is getting effected as well.
Here is the property path to get to the nested value, I just cannot figure out how to get it to work with the column?
d.results[0].AssignedTo.results[0].Title
& for the other item that I have listed in my response it is this:
d.results[1].AssignedTo.results[0].Title
var table = $('#taskTable').DataTable({
columns: [
{"data": "AssignedTo.results[0].Title", visible: false },
{"data": "Priority", visible: false},
{"data": "Title"},
{"data": "Status"},
{"data": "StartDate",
render: function(data, type, row) { //render function to format the date values from my AJAX
if (type === "sort" || type === "type") {
return data;
}
return moment(data).format("MM/DD/YYYY");
}
},
{"data": "DueDate",
render: function(data, type, row) { //render function to format the date values from my AJAX
if (type === "sort" || type === "type") {
return data;
}
return moment(data).format("MM/DD/YYYY");
}
},
{"data": "PercentComplete"}
],
dom: 'frt',
columnDefs: [ {
orderable: false,
className: 'select-checkbox',
targets: 0
} ],
select: true,
order: [[2, 'asc']],
rowGroup: {
dataSrc: [
'AssignedTo',
'Priority'
],
startRender: function(rows, group, level) {
var all;
if (level === 0) {
top = group;
all = group;
} else if (level === 1) {
parent = top + group;
all = parent;
// if parent collapsed, nothing to do
if (!collapsedGroups[top]) {
return;
}
} else {
// if parent collapsed, nothing to do
if (!collapsedGroups[parent]) {
return;
}
all = top + parent + group;
}
var collapsed = !collapsedGroups[all];
//console.log('collapsed:', collapsed);
rows.nodes().each(function(r) {
r.style.display = collapsed ? 'none' : '';
});
var priorityClass = '';
rows.every(function (rowIdx, tableLoop, rowLoop, data){
var data = this.data();
var api = $.fn.dataTable.Api('#taskTable');
//console.log(api);
//console.log(data.Priority)
switch(data.Priority){
case '(1) High':
priorityClass = 'red';
break;
case '(2) Normal':
priorityClass = 'orange';
break;
case '(3) Low':
priorityClass = 'yellow';
break;
}
});
//Add category name to the <tr>.
if(level === 0){
return $('<tr/>')
.append('<td colspan="6" style="text-align: left;">' + group + ' (' + rows.count() + ')</td>')
.attr('data-name', all)
.toggleClass('collapsed', collapsed);
} else if (level === 1) {
return $('<tr/>').addClass(priorityClass)
.append('<td colspan="6" style="text-align: left;">' + group + '</td>')
.attr('data-name', all)
.toggleClass('collapsed', collapsed);
}
}
}
});
This question has an accepted answers - jump to answer
Answers
Disregard it was because of the dataSrc