Dear friends,
I am trying to load a nested table based on parent grid id using Abp web form and javascript. getting an error listed below.
![](https://www.csharp.com/forums/uploadfile/6c6aeb/02192024055724AM/image.png)
my razor page is like this
<abp-table striped-rows="true" id="QueuesTable">
<thead>
<tr>
<th>@L["Actions"]</th>
<th>@L["Name"]</th>
<th>@L["TicketRangeMin"]</th>
<th>@L["TicketRangeMax"]</th>
<th>@L["TicketCode"]</th>
<th>@L["IsDefaultQueue"]</th>
<th>@L["LastTicketId"]</th>
</tr>
</thead>
<tr class="nested-row">
<td colspan="6">
<abp-table striped-rows="true" class="table table-striped dataTable no-footer" id="QueueTicketTable">
<thead>
<tr>
<th>SequenceNumber</th>
<th>Status</th>
<th>TicketNumber</th>
</tr>
</thead>
</abp-table>
</td>
</tr>
</abp-table>
and below is the javascript for load data
//--------------parent grid settings and data loading for parent grid
var dataTableColumns = [
{
rowAction: {
items:
[
{
text: l("Expand"),
visible: abp.auth.isGranted('QueuingSystem.Queues.Edit'),
action: function (data) {
//-----------this is the id of nested table
var queueTicketTable = document.getElementById("QueueTicketTable");
var row = $(data.record.queue.id);
var queueId = row[0];
//-------set a api to get result based on id
var result = queueService.getTicketsByQueueId(queueId);
QueuedataTableColumns = result;
}
}
]
},
width: "1rem"
},
{ data: "queue.name" },
{ data: "queue.ticketRangeMin" },
{ data: "queue.ticketRangeMax" },
{ data: "queue.ticketCode" },
{
data: "queue.isDefaultQueue",
render: function (isDefaultQueue) {
return isDefaultQueue ? '<i class="fa fa-check"></i>' : '<i class="fa fa-times"></i>';
}
},
{ data: "queue.lastTicketId" }
];
//---columns for nested table
var QueuedataTableColumns = [
{ data: "tickts.status" },
{ data: "tickts.TicketNumber" },
{ data: "tickts.SequenceNumber" }
];
//---------------this is the parent table where nested table populate based on its id
var dataTable = $("#QueuesTable").DataTable(abp.libs.datatables.normalizeConfiguration({
processing: true,
serverSide: true,
paging: true,
searching: false,
scrollX: true,
autoWidth: true,
scrollCollapse: true,
order: [[1, "asc"]],
ajax: abp.libs.datatables.createAjax(queueService.getList, getFilter),
columnDefs: dataTableColumns
}));
//-------------this is the nested table(nested table) i want to load
var QueuedataTable = $('#QueueTicketTable').DataTable({
processing: true,
serverSide: true, // You may need to set this to false if you're not handling server-side processing
paging: true,
searching: false,
scrollX: true,
autoWidth: true,
scrollCollapse: true,
order: [[0, "asc"]], // Set the default sort order, adjust as needed
columns: QueuedataTableColumns
});