1
내 데이터 테이블의 첫 번째 행만 var sel을받습니다.첫 번째 행만 jquery를받습니다.
var는 HTML 드롭 다운에서 값을 제공받습니다. 첫 번째 행의 인쇄 버튼을 클릭하면 var에 URL이 전달됩니다. 선택 옵션을 변경하면 var가 업데이트됩니다.
다른 행을 클릭하면 var가 정의되지 않은 행으로 표시됩니다.
<script type="text/javascript">
function datatableHandler (sel)
{
$('#workorder').DataTable().destroy();
var table = $('#workorder').DataTable({
//display columns
"columns": [
//display action buttons
{"mData": "idWorkOrder",
"mRender": function (data, type, row) {
return '<a href="print.php?idWorkOrder='+row.idWorkOrder+'&pages='+sel+'" data-toggle="tooltip" title="PRINT" target="_blank"><button class="btn btn-info btn-sm"><span class="glyphicon glyphicon-print" aria-hidden="true"></span></button></a>'+
'<a href=update.php?idWorkOrder='+row.idWorkOrder+' data-toggle="tooltip" title="EDIT"><button class="btn btn-warning btn-sm"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></button></a>'+
'<a href=delete.php?idWorkOrder='+row.idWorkOrder+' data-toggle="tooltip" title="DELETE"><button class="btn btn-danger btn-sm"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></button></a>';
}
},
{"data": "cFirstName"},
{"data": "cLastName"},
{"data": "wRoofContract", render: $.fn.dataTable.render.number(',', '.', 0, '$')},
{"data": "wSidingContract", render: $.fn.dataTable.render.number(',', '.', 0, '$')},
{"data": "wGutterContract", render: $.fn.dataTable.render.number(',', '.', 0, '$')}
],
"processing": true,
"serverSide": true,
"responsive": true,
"ajax": {
url: 'datatables.php',
type: 'POST'
}
});
table.draw(false);
}
$(document).ready(function() {
$('#multipleSelect').on('change', function() {
sel = $(this).val();
console.log(sel);
datatableHandler (sel);
});
$('#workorder').DataTable().destroy();
var table = $('#workorder').DataTable({
//display columns
"columns": [
//display action buttons
{"mData": "idWorkOrder",
"mRender": function (data, type, row) {
sel=1;
return '<a href="print.php?idWorkOrder='+row.idWorkOrder+'&pages='+sel+'" data-toggle="tooltip" title="PRINT" target="_blank"><button class="btn btn-info btn-sm"><span class="glyphicon glyphicon-print" aria-hidden="true"></span></button></a>'+
'<a href=update.php?idWorkOrder='+row.idWorkOrder+' data-toggle="tooltip" title="EDIT"><button class="btn btn-warning btn-sm"><span class="glyphicon glyphicon-pencil" aria-hidden="true"></span></button></a>'+
'<a href=delete.php?idWorkOrder='+row.idWorkOrder+' data-toggle="tooltip" title="DELETE"><button class="btn btn-danger btn-sm"><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></button></a>';
}
},
{"data": "cFirstName"},
{"data": "cLastName"},
{"data": "wRoofContract", render: $.fn.dataTable.render.number(',', '.', 0, '$')},
{"data": "wSidingContract", render: $.fn.dataTable.render.number(',', '.', 0, '$')},
{"data": "wGutterContract", render: $.fn.dataTable.render.number(',', '.', 0, '$')}
],
"processing": true,
"serverSide": true,
"responsive": true,
"ajax": {
url: 'datatables.php',
type: 'POST'
}
});
table.draw(false);
});
</script>
좋아, 너는 내가 일주일 동안이 일을 해왔다. 드롭 다운에서 선택이 이루어질 때까지 표가 표시되지 않는다는 점을 제외하면 모두 작동합니다. 그러나 셀 값은 올바르게 전달됩니다. –
그래,이게 효과가있는 것처럼 보입니다. 어떤 제안? 위의 업데이트 된 코드. –
@NicholasRoeder 감사합니다. datatableHandler (sel); 이 함수 문서를 준비하여 데이터 테이블을 보여줄 수 있습니다. –