У меня возникает проблема, когда я нажимаю кнопку обновления, Datatables не перерисовывает данные, но я вижу, что грядет массив Json.
PHP, MYSQL, LARAVEL 5.2, DATATABLES 1.10
HTML
<table id="tblOrderList" class="table table-bordered table-hover">
<thead>
<tr class="warning">
<th>#</th>
<th>Product Code</th>
<th>Quantity</th>
<th>Selling Price</th>
<th>Amount</th>
</tr>
</thead>
</table>
JAVASCRIPT
$(function(){
dataTableIdGenerate = $("#tblOrderList").DataTable({
processing: true,
serverSide: true,
deferRender: true,
scrollX:true,
cache: false,
sorting: false,
responsive: false,
paging: false,
ordering:false,
searching:false,
info:false,
processData:false,
fixedHeader: {
header: true,
footer: false
},
columns: [
{ "data": "SNo", "orderable": false },
{ "data": "productCode", "orderable": false },
{ "data": "qty", "orderable": false },
{ "data": "sellingPrice", "orderable": false },
{ "data": "amount", "orderable": false }
],
ajax: {
url: "{{ fnGenerateUrl('orders_list') }}",
type: "POST",
"data":{
_token: "{{csrf_token()}}",
parentid:"{{ $order->id }}"
}
},
"language": {
"lengthMenu": "_MENU_",
"emptyTable": "No data found!",
"zeroRecords": "No matching data found",
"sProcessing": '<i class="fa fa-circle-o-notch fa-spin fa-lg"></i> please wait...processing...',
},
buttons: [
{
text: 'Reload',
action: function () {
// table.ajax.reload();
fnDoOrderProductsReloadSearch();
}
}
],
"initComplete": function( settings, json ) {
},
});
});
function fnDoOrderProductsReloadSearch()
{
$('#tblOrderList').DataTable().ajax.reload(null, false);
//$("#tblOrderList").DataTable().ajax.reload(null, false);
//$("#tblOrderList").DataTable().ajax.reload();
//dataTableIdGenerate.ajax.reload();
//dataTableIdGenerate.draw();
//$("#tblOrderList").DataTable().rows().invalidate().draw();
//$("#tblOrderList").ajax.reload();
//$("#tblOrderList").DataTable().draw();
//setTimeout(function(){$("#tblOrderList_processing").hide();}, 1000);
}
ВЫХОД
`{"data":[{
"SNo":1,
"id":"61be1780-5106-11e9-9b13-39c7d14bdcc4",
"productCode":"10515273","qty":"<input type=\"text\" name=\"productquantity61be1780-5106-11e9-9b13-39c7d14bdcc4\" id=\"productquantity61be1780-5106-11e9-9b13-39c7d14bdcc4\" value=\"2\" onchange=\"fnOrderProductEditQuantity('61be1780-5106-11e9-9b13-39c7d14bdcc4')\" class=\"form-control\" size=\"8\" placeholder=\"Enter the qty\" maxlength=\"20\" autocomplete=\"off\" \/>",
]
"sellingPrice":"<input type=\"text\" name=\"productsellingprice61be1780-5106-11e9-9b13-39c7d14bdcc4\" id=\"productsellingprice61be1780-5106-11e9-9b13-39c7d14bdcc4\" value=\"1000\" onchange=\"fnOrderProductEditSellingPrice('61be1780-5106-11e9-9b13-39c7d14bdcc4')\" class=\"form-control\" size=\"12\" placeholder=\"Enter the unitprice\" maxlength=\"20\" autocomplete=\"off\" \/>","amount":"2,000.00"}],
"draw":1,"recordsTotal":1,"recordsFiltered":1}`
В моем контроллере
echo json_encode(array('data' => $rows_json, "draw" => 1, "recordsTotal" => $totalRecords, "recordsFiltered" => $totalRecords));
Когда я обновлю количество и цену, он будет сохранен в базе данных.Затем я вызову функцию fnDoOrderProductsReloadSearch () для перезагрузки таблиц данных.
Но это не работает.Я пробовал по-разному ..
Не могли бы вы сказать, в чем проблема?