actualiser DataTable sans recharger la page

Sep 21 2020

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

1 RoshanZaid Nov 22 2020 at 15:46

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;
                }
            });
AmirAliEsteki Sep 23 2020 at 09:30

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