2014-11-25 3 views
0

У меня есть таблица, где столбец указаны все даты, но это не сортирует правильно ..DataTables сортировать по времени назад

Я использовал livestamp.js и moment.js сделать дату, время назад для легкой чтение .. вместо 3/1/2012 это будет 2 years ago Вам просто нужно его преобразовать в метку времени.

здесь полный jsfiddle demo

, как вы можете увидеть, нажав на модифицированном колонке, это не правильно сортировать.

ответ

2

Возможно, вы не получаете желаемую сортировку, потому что она заказывается лексикографически.

Вы можете воспользоваться HTML5 data attributes, как и с помощью livestamp.js, чтобы использовать представление метки времени для сортировки.

Просто добавьте атрибут data-order каждой временной метки клетки:

<tbody> 
    <tr> 
     <td>ITEM 1</td> 
     <td data-order="1416934028"><span data-livestamp="1416934028"></span></td> 
    </tr> 
    <tr> 
     <td>ITEM 2</td> 
     <td data-order="1415033228"><span data-livestamp="1415033228"></span></td> 
    </tr> 
    <tr> 
     <td>ITEM 3</td> 
     <td data-order="1401900428"><span data-livestamp="1401900428"></span></td> 
    </tr> 
    <tr> 
     <td>ITEM 4</td> 
     <td data-order="1330620428"><span data-livestamp="1330620428"></span></td> 
    </tr> 
</tbody> 

См code обновляется.

+0

спасибо .. сейчас мой проект будет легким .. спасибо снова. – Lion

+1

Это работает только для таблиц, в которых строки контролируются пользователем. Если вы дадите datatables построить всю таблицу, это не сработает :( –

Смежные вопросы