This is my existing code for pagination here I am getting error as roleList is not defined.
I don't know how to use ajax response inside of dataTable().What I did wrong?
I got struck with this part for last 3 days,however I searched for a solution for long time,but couldn't fine one.
function empRoles() {debugger
table = $('#mydata').DataTable({
"ajax": {
"type": 'POST',
"dataType": 'json',
"url": '/Admin/getRolesList',
"dataSrc": function (response) {
var roleList = response;
console.log(roleList)
},
"data": {
"json": JSON.stringify(roleList)
}
},
"columns": [{
"data": "sNo"
}, {
"data": "roleName",
"className": "roleName"
}, {
"data": "roleName",
"render": (data, type, row, meta) => `
<button class="btn edit btn-info" id="edit${row.sNo}">
<i class="fa fa-pencil"></i>
Edit
</button>
<button class="btn update btn-success" id="update${row.sNo}">
<i class="fa fa-floppy-o"></i>
Update
</button>
<button class="btn dlt btn-danger" data-toggle="modal" data-target="#confirm" id="delete${row.sNo}">
<i class="fa fa-trash-o"></i>
Delete
</button>
`
,
"sortable": false
}],
"createdRow": (row, data, dataIndex) => {
$(row).attr("id", "row" + data.sNo);
$('td:eq(1)', row).attr("id", "name" + data.sNo);
}
});
}
Any advice please..
If I'm correctly understanding the problem, I believe the simplest solution would be to simply initialize the roleList variable outside of the options.
function empRoles() {
var roleList = []; // or whatever the initial data value should be
var table = $('#mydata').DataTable({
// ...
"dataSrc": function (response) {
roleList = response;
console.log(roleList)
},
"data": {
"json": JSON.stringify(roleList)
}
// ...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With