Мне надо сортировать таблицу, разделённую на tbodies. Например, ---------------------------- tbody A column total .... .... ---------------------------- tbody B column total .... .... .... .... ---------------------------- Как можно поменять tbody A и tbody B местами? Сложность в том, что они могут быть разного формата.
Code: <script type="text/javascript"> function swap(a,b) { return [ a.parentNode.replaceChild(b.cloneNode(true), a), b.parentNode.replaceChild(a.cloneNode(true), b) ]; } </script>
Спасибо. Только почему-то не работает. Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <title>Test</title> <style type="text/css"> body { font-family: arial, sans-serif; } h1, h2 { font-family: sans; } dt { display: block; float: left; clear: both; width: 100px; text-align: right; margin: 0 8px 0 0; } </style> </head> <body> <table id="sortTest"> <tbody> <tr><th>tbody A <a href="" onclick="sort()">SORT</a></th><th>column total</th></tr> <tr><td></td><td>cell 1</td></tr> <tr><td></td><td>cell 2</td></tr> </tbody> <tbody> <tr><th>tbody B</th><th>column total</th></tr> <tr><td></td><td>cell 1</td></tr> <tr><td></td><td>cell 2</td></tr> <tr><td></td><td>cell 3</td></tr> <tr><td></td><td>cell 4</td></tr> </tbody> </table> <script type="text/javascript"> function sort() { var tblSortTest = document.getElementById('sortTest'); var tBodies = tblSortTest.getElementsByTagName("tbody"); swap( tBodies[1], tBodies[0] ); } function swap(a,b) { return [ a.parentNode.replaceChild(b.cloneNode(true), a), b.parentNode.replaceChild(a.cloneNode(true), b) ]; } </script> </body> </html>
У тебя ссылка должна false возврвщать! Это означает, что мы отменяем действие по умолчанию А то скрипт срабатывает(меняет местами строки), при нажатии на ссылку, а потом ты опять переходишь по ссылке(ты же ведь ее нажал) на эту же на эту страницу в изначальном виде, нужно отменить этот переход замени ссылку на можно и или если sort возвращает false Прям полет фантазии
Если последнее выражение возвращает любое значение, отличное от void undefined, то на странице появляется строка, полученная в результате приведения этого значения к строковому типу.