Question problème avec le table de table jquery avec des lignes ajoutées dynamiques


bonjour j'ai un problème avec des lignes ajoutées dynamiquement à jquery tableorter,

Je dois ajouter une ligne au début de la table, par défaut, le tablesorter fonctionne correctement, mais après l'ajout de la ligne, la table triée ne trie que par les lignes précédentes, ce qui signifie que la nouvelle ligne n'est pas incluse dans le processus de tri. nouvelle ligne a certains mais pas tous les champs vides toute solution?


12
2018-01-01 12:35


origine


Réponses:


Le site Web de tablesorter offre des détails sur la façon de procéder: Ajout de données de table avec Ajax. Le code est reproduit ci-dessous:

$(document).ready(function() {
    $("table").tablesorter();
    $("#ajax-append").click(function() {
        $.get("assets/ajax-content.html", function(html) {
            // append the "ajax'd" data to the table body 
            $("table tbody").append(html);
            // let the plugin know that we made a update 
            // updateAll ensures sorting is updated as well
            $("table").trigger("updateAll");
            // set sorting column and direction, this will sort on the first and third column 
            var sorting = [[2, 1], [0, 0]];
            // sort on the first column 
            $("table").trigger("sorton", [sorting]);
        });
        return false;
    });
});

20
2018-01-01 15:14



Vous avez essayé de désélectionner le tablesorter et d'initialiser une nouvelle session de tablesorter?

Parce que le tablesorter ne sait pas que vous avez ajouté les nouvelles lignes, alors pourquoi ne pas créer un nouveau table sur la table.


1
2018-01-01 13:41



La seule façon de le faire fonctionner était de régénérer toute la table (enlevez-la et créez-la à nouveau).

$(".resultTablePlaceholder").html('').html('<table id="resultTable">...</table>');
$("#resultTable").tablesorter();

-1
2017-10-15 14:39



Ces lignes ont parfaitement fonctionné pour moi. Après l'attribution du code HTML, déclenchez simplement la fonction de mise à jour de la table.

$('#tblID').html(str);
$("#tblID").trigger("update");

#tblID est l'ID de la table et str est le html des lignes de la table assignées à la table.


-1
2017-11-25 07:17