Inverser les lignes de la table

Je veux inverser les lignes de table tbody avec jQuery.

CE QUE J’AI:

(…) continuez dans jsfiddle.

Voici ce que j’ai et ce que je veux: http://jsfiddle.net/ZaUrP/1/

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

TITLE A TITLE B
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