Je veux inverser les lignes de table tbody avec jQuery.
CE QUE J’AI:
TITLE A TITLE B
(…) continuez dans jsfiddle.
Voici ce que j’ai et ce que je veux: http://jsfiddle.net/ZaUrP/1/
- Comment supprimer toutes les lignes de la table tout en conservant l’en-tête
- jQuery supprime une ligne de la table avec des caractères non standard
- Changer la couleur des cellules du tableau en fonction de la valeur
- Comment faire pour glisser la ligne de table à l’aide de JQuery?
- Jquery Drag-Drop (Obtention de l’élément déposé)
- Calculer et définir la valeur de colspan de manière dynamic
- Comment diviser une ligne de table avec jQuery (insérer TR entre TD)
- Créer une table de contacts à partir de données JSON
- jquery tablesorter ajoute un titre / une info-bulle à afficher en ordre croissant / décroissant
- Utilisez jQuery pour déplacer les colonnes dans l’ordre suivant lorsque la page est redimensionnée
violon
à peu près la même chose que l’autre gars, seulement j’utilise .detach () qui est garanti pour garder intacts tous les événements fous qui étaient attachés à la tr
. J’utilise également $ .makeArray pour éviter d’inverser l’un des éléments proto
sur l’object jQuery de base.
$(function(){ $("tbody").each(function(elem,index){ var arr = $.makeArray($("tr",this).detach()); arr.reverse(); $(this).append(arr); }); });
Essaye ça:-
Obtenez le tableau de commandes de tbody
utilisant .get()
et utilisez Array.reverse pour inverser les éléments et les réassigner .
var tbody = $('table tbody'); tbody.html($('tr',tbody).get().reverse());
Violon
Si vous avez des événements à tr
ou des éléments contenant des éléments, vous pouvez simplement les attacher à l’aide d’une délégation, de sorte que les éléments inversés obtiennent également une délégation.
Démo
$('tbody').each(function(){ var list = $(this).children('tr'); $(this).html(list.get().reverse()) });
Démo -->
http://jsfiddle.net/ZaUrP/5/
J’ai écrit un plugin jQuery appelé $.reverseChildren
qui inversera tous les enfants spécifiés d’un élément donné. Nous remercions DefyGravity pour son utilisation perspicace et insortinggante de $.makeArray
.
J’ai non seulement inversé les lignes d’un tableau, mais aussi les colonnes.
(function($) { $.fn.reverseChildren = function(childSelector) { this.each(function(el, index) { var children = $.makeArray($(childSelector, this).detach()); children.reverse(); $(this).append(children); }); return this; }; }(jQuery)); $(function() { var tableCopy = $('#myTable').clone(true).attr('id', 'myTableCopy').appendTo( $('body').append('
').append($('').html('Reversed Table'))); tableCopy.find('tr').reverseChildren('th, td'); // Reverse table columns tableCopy.find('tbody').reverseChildren('tr'); // Reverse table rows });
* { font-family: "Helvetica Neue", Helvetica, Arial; } h1 { font-size: 16px; text-align: center; } table { margin: 0 auto; } th { background: #CCC; padding: 0.25em; } td { border: 1px solid #CCC; padding: 5px; } hr { margin: 12px 0; }
Original Table
Header A Header B Header C Data 1A Data 1B Data 1C Data 2A Data 2B Data 2C Data 3A Data 3B Data 3C Data 4A Data 4B Data 4C
- Données de taille incorrecte dans l’onglet Bootstrap
- Comment cloner deux colonnes dans une table avec jQuery
- Convertir des cellules de tableau en zones de texte avec JQuery
- Hauteur de ligne JQuery Datatables
- Comment obtenir les données d’une ligne jQuery
- Remplir une table html lors d’un événement à succès jQuery
- Pourquoi ne puis-je pas supprimer cette ligne de la table dans IE avec jQuery?
- Utilisation de jQuery pour faire glisser un groupe de lignes de tableau
- Comment insérer une autre ligne de tableau entre deux lignes de tableau?
- Récupérer les lignes précédentes et suivantes d’une table à l’aide de jQuery