Я хотел бы знать, как правильно сортировать свои таблицы по дате.Я использую jquery с плагином Data Tables (http://datatables.net/).
). Я также нашел на этом сайте полезный плагин для своей проблемы, который я интегрировал в свой код. Мой JS-код выглядит так:
<script>
$(document).ready(function() {
jQuery.fn.dataTableExt.oSort['uk_date-asc'] = function(a,b) {
var ukDatea = a.split('/');
var ukDateb = b.split('/');
var x = (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
var y = (ukDateb[2] + ukDateb[1] + ukDateb[0]) * 1;
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
};
jQuery.fn.dataTableExt.oSort['uk_date-desc'] = function(a,b) {
var ukDatea = a.split('/');
var ukDateb = b.split('/');
var x = (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
var y = (ukDateb[2] + ukDateb[1] + ukDateb[0]) * 1;
return ((x < y) ? 1 : ((x > y) ? -1 : 0));
};
var oTable = $('#example').dataTable( {
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"aoColumns": [
null,
{ "sType": "uk_date" },
null,
null,
null,
null,
null
]
} );
$(".search_init").click(function(){
var input_value = $(this).val();
$(this).val("");
});
$("tfoot input").keyup( function () {
oTable.fnFilter( this.value, $("tfoot input").index(this) );
} );
});
</script>
Моя таблица выглядит следующим образом:
<table id="example">
<thead>
<tr>
<th>Some Text</th>
<th>Date</th>
<th>Some Text</th>
<th>Some Text</th>
<th>Some Text</th>
<th>Some Text</th>
<th>Some Text</th>
</tr>
</thead>
<tbody>
<tr>
<td>Some text</td>
<td>22/07/2011</td>
<td>Some text</td>
<td>Some text</td>
<td>Some text</td>
<td>Some text</td>
<td>Some text</td>
</tr>
...
</tbody>
<tfoot>
<tr>
<td><input type="text" class="search_init" value="Text" /></td>
<td><input type="text" class="search_init" value="Text" /></td>
<td><input type="text" class="search_init" value="Text" /></td>
<td><input type="text" class="search_init" value="Text" /></td>
<td><input type="text" class="search_init" value="Text" /></td>
<td><input type="text" class="search_init" value="Text" /></td>
<td><input type="text" class="search_init" value="Text" /></td>
</tr>
</tfoot>
</table>
Может кто-нибудь объяснить мне, почему это не работает? Я могу отсортировать каждый столбец, кроме столбца с датами в нем.
Я включаю следующие библиотеки:
<script src="[PATH]/js/jquery-1.6.2.min.js" language="JavaScript" type="text/javascript"></script>
<script src="[PATH]/js/jquery-ui-1.8.16.custom.min.js" type="text/javascript"></script>
<script src="[PATH]/js/jquery.dataTables.min.js" language="JavaScript" type="text/javascript"></script>
<script src="[PATH]/js/ZeroClipboard.js" type="text/javascript" charset="utf-8"></script>
<script src="[PATH]/js/TableTools.js" type="text/javascript" charset="utf-8"></script>