【发布时间】:2020-11-04 20:53:12
【问题描述】:
我已经设置了嵌套数据表,父表MAINtable 和子表adjlinesTable。几乎一切正常,除了我正在绘制从adjlinesTable 到MAINtable 中的每一行的所有行。对于MAINtable 中的每一行,我只希望adjlinesTable 包含MAINtable(id) = adjlinesTable(adjustmentid) 所在的记录。我一直在循环尝试不同的方法 3 天,但就是无法击败这个!这是我的脚本:
$(document).ready(function(){
function createChild ( row ){
var table = $('<table class="display" width="100%"/>');
row.child( table ).show();
var adjlinesTable = table.DataTable( {
ajax: "php_pages/fetch_adjlines.php",
pageLength: 5,
columns: [
{ data: "id" },
{ data: "adjustmentid" },
{ data: "product" },
{ data: "quantity" }
],
order: [[1, 'asc']],
} );
}
var table = $('#MAINtable').DataTable( {
ajax: "php_pages/fetch_adjustments.php",
pageLength: 5,
columns: [
{
className: 'details-control',
orderable: false,
data: null,
defaultContent: ''
},
{ data: "id" },
{ data: "date" },
{ data: "reason" }
],
order: [[1, 'asc']],
} );
$('#MAINtable tbody').on('click', 'td.details-control', function () {
var tr = $(this).closest('tr');
var row = table.row( tr );
var rowData = row.data();
if ( row.child.isShown() ) {
row.child.hide();
tr.removeClass('shown');
$('#' + rowData.id.replace(' ', '-')).DataTable().destroy();
}
else {
createChild(row);
tr.addClass('shown');
}
} );
} );
【问题讨论】:
标签: javascript jquery ajax datatables