Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.12.2014, 02:11
Аватар для Sanu0074
Аспирант
Отправить личное сообщение для Sanu0074 Посмотреть профиль Найти все сообщения от Sanu0074
 
Регистрация: 16.12.2012
Сообщений: 80

Сортировка таблицы по атрибуту
Есть таблица
<table>
  <tbody>
      <tr>
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="8">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="12">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="2">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="7">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="0">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="0">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
  </tbody>
</table>


Нужно ее строки отсортировать по параметру data-sort, по убыванию, чтоб было так:

<table>
  <tbody>
      <tr data-sort="12">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="8">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="7">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="2">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="0">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="0">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr>
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
  </tbody>
</table>


Как это сделать наиболее лучшим или простым способом? (с помощью jquery)
Ответить с цитированием
  #2 (permalink)  
Старый 29.12.2014, 04:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Sanu0074,

<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">


  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
     $(function(){
      var arr = $.makeArray( $("tbody tr") );;
       arr.sort(function(a, b) {
         a = $(a).data('sort')!== void(0)? +$(a).data('sort'):-1 ;
         b = $(b).data('sort')!== void(0)? +$(b).data('sort') : -1 ;
         return b - a
      });
    $( arr ).prependTo("tbody");
    alert($("body").html())
});


  </script>
</head>

<body>
<table>
  <tbody>
      <tr>
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="8">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="12">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="2">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="7">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="0">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
      <tr data-sort="0">
          <th>cell 1</th>
          <th>cell 2</th>
      </tr>
  </tbody>
</table>


</body>

</html>
Ответить с цитированием
  #3 (permalink)  
Старый 29.12.2014, 12:26
Аватар для Sanu0074
Аспирант
Отправить личное сообщение для Sanu0074 Посмотреть профиль Найти все сообщения от Sanu0074
 
Регистрация: 16.12.2012
Сообщений: 80

рони,
спасибо)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка таблицы по алфавиту dozer Events/DOM/Window 6 18.10.2014 00:22
Сортировка таблицы (даты) edmundantes Элементы интерфейса 4 17.05.2012 09:51
Сортировка таблицы, ячейки которой содержат теги stos Events/DOM/Window 9 05.05.2012 02:21
Сортировка таблицы, подгружаемой ajax Serg-inf AJAX и COMET 2 03.10.2011 14:30
Сортировка таблицы, при помощи js Prizrak177 Общие вопросы Javascript 10 02.09.2010 12:17