Я получил таблицу html tabdevis < /code>: < /p>
numDevis
libProduit
codEtat
< /code>
Я поместил некоторые данные с вызовом Ajax. Эти данные из базы данных. С кодом находится внутри функции: < /p>
function putDevis() {
var listeDevis = $("#tabDevis").find("tbody");
var request = $.ajax({
type : "GET",
url : "/services/opp/getDevis/",
cache : false
});
request.done(function(msg) {
for (var i = 0; i < msg.length; i++) {
var devis = msg;
var tr = $("#template").clone();
tr.removeAttr("id");
tr.attr('id', 'devis-' + devis.id);
tr.find('#numDevis').html(devis.idOpportunite);
tr.find("#codProduit").html(devis.codProduit);
tr.find("#libProduit").html(devis.libProduit);
listeDevis.append(tr);
}
}
request.fail(function(jqXHR, textStatus, errorThrown) {
// Deal with the error
}
// Call dataTable
$('#tabDevis').DataTable({
"order" : [ [ 1, "desc" ] ],
"oLanguage" : {
...
}
"aoColumns" : [ {
"bSortable" : true
}, {
"bSortable" : true
}, {
"bSortable" : true
}]
}
}
< /code>
Я удаляю строку в своей базе данных по другому способу, поэтому я хочу перезагрузить таблицу HTML. Я называю свою функцию putdevis () < /code>, но я все еще получаю удаленную строку, которая удалена из базы данных.function deleteDevis(numDevis){
var requestsup = $.ajax({type: "GET",
url: "/services/ep/deleteDevis?pId=" + numDevis
cache: false
});
requestsup.done(function(msg){
putDevis();
});
requestsup.fail(function(jqXHR, textStatus, errorThrown) {
// Deal with errors
});
}
< /code>
На каком способе обновить DataTable? Решение < /strong> < /p>
Способ - уничтожить DataTable.var table = $('#tabDevis').DataTable();
table.destroy();
var listeDevis = $("#tabDevis").find("tbody");
< /code>
, а затем нарисуйте его после DataTable Call: < /p>
var table = $('#tabDevis').DataTable();
table.draw();
Подробнее здесь: https://stackoverflow.com/questions/367 ... ble-update