actualiser DataTable sans recharger la page
J'essaye de recharger les tables de données qui ont été insérées dans les onglets.
s'il vous plaît se référer à la question : AJAX Update DataTable après succès
une classe php userX.php a 3 tables de données avec des implémentations côté client. Je suis capable de changer une ligne du premier tableau à l'aide d'un bouton, une fois que c'est fait, l'enregistrement ira à l'onglet 2 -> et le contenu de celui-ci tableau deux. Je change le statut maintenant en utilisant AJAX comme ceci
$(".changeStatus").click(function(event){ if(confirm("Are you sure changing status?")){ event.preventDefault(); var status = "In Production"; var id = $(this).attr('data-id');
$.ajax({ url : 'dbo.php', method : 'POST', data : {status : status , id : id}, success : function(data){ $('tr#'+id+'').css('background-color', '#ccc');
$('tr#'+id+'').fadeOut('slow');
}
});
}
else{
return false;
}
});
en attendant, il doit également être mis à jour dans le tableau de l'onglet 2. J'ai essayé d'y parvenir en utilisant le contenu div. aucun d'eux ne semble fonctionner. Qu'est-ce que je rate. ouvert à la suggestion.
Réponses
La table peut simplement être rechargée en réinitialisant la méthode de la table de données en la rechargeant également via son AJAX intégré. Le bloc de code ci-dessous aiderait.
$(document).on('click','#ChangeNext',function(event){ if(confirm("Are you sure changing status?")){ event.preventDefault(); var statusid = $(this).attr('data-id');
$.ajax({ url : 'dbo.php', method : 'POST', data : {statusid : statusid}, success : function(data) { $('#exampleone').DataTable().ajax.reload();
}
});
}
else{
return false;
}
});
le meilleur moyen de mettre des données dans un DataTables avec des requêtes ajax est l'api DataTables ajax que vous pouvez voir dans le lien suivant:
DataTables Données provenant d'Ajax
Exemple jQuery:
jQuery('.changeStatus').click(function(event){
$('#example').DataTable({ ajax: 'data.json' });
});
Exemple JSON:
{
"data": [
[
"Roshan Zaid",
"Stackoverflow user",
"New member"
],
[
"AmirAli Esteki",
"Stackoverflow and AskUbuntu user",
"New member"
]
]
}
la réponse de vos requêtes ajax doit être json par défaut