Я использую datatable plugin версию 1.8.2 для отображения таблицы на моей веб-странице.jquery дата сортировки вопроса
Он работает отлично за исключением. Он не сортирует даты правильно, он показывает «недействительная дата» в объекте Date. ниже - мой фрагмент кода.
$(document).ready(function() {
jQuery.fn.dataTableExt.oSort['usdate-asc'] = function(a,b) {
/*
a and b are <div> tag with date
*/
var texta = ($(a).text()).toString(); // Here I am able to see my date in ' 03-17-2015 12:25:21 AM ' format
var textb = ($(b).text()).toString();// Here I am able to see my date in ' 03-17-2015 12:25:21 AM ' format
var usDatea = new Date(Date.parse(texta)); // Here it is showing "invalid date"
var usDateb = new Date(Date.parse(textb));
return ((usDatea < usDateb) ? -1 : ((usDatea > usDateb) ? 1 : 0));
};
jQuery.fn.dataTableExt.oSort['usdate-desc'] = function(a,b) {
/*
a and b are <div> tag with date
*/
var texta = ($(a).text()).toString(); //same as above
var textb = ($(b).text()).toString(); //same as above
var usDatea = new Date(Date.parse(texta)); //same as above
var usDateb = new Date(Date.parse(textb)); //same as above
return ((usDatea < usDateb) ? 1 : ((usDatea > usDateb) ? -1 : 0));
};
$('#tablegridname').dataTable({
"sPaginationType": 'full_numbers',
"bJQueryUI": true,
"iDisplayLength": 50,
"aLengthMenu":[50,100,500,1000],
"aaSorting": [[ 4, 'desc' ]],
"aoColumns": [null, null, null, null, {"sType": "usdate"}]
});
});
});
Как выглядит дата? Похоже, что у вас есть несколько дат в формате 'Data.parse()' не распознаются. BTW - вы должны действительно рассмотреть возможность обновления вашей версии данных до, по крайней мере, версии 1.9.4. – davidkonrad
Ваша проблема в вашей дате (03-17-2015 12:25:21) не в установленном формате. Какое поведение вы ожидаете, когда ваша дата 01-02-2015? 2 января (американец) или 1 февраля (большая часть мира)? Посмотрите здесь и попытайтесь получить свою дату в таком формате: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse –
@davidkonrad Я не могу этого сделать. потому что все работает нормально, кроме сортировки по дате, и Клиент не будет исключать его :( – user3035305