Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.02.2019, 10:03
Аспирант
Отправить личное сообщение для alex-romanov Посмотреть профиль Найти все сообщения от alex-romanov
 
Регистрация: 02.02.2019
Сообщений: 67

DataTables - некорректная сортировка даты формата dd-mm-yyyy и кириллицы
'DD-MM-YYYY' (10-02-2019)

<script type="text/javascript" src="/resources/js/jquery/datatables.min.js"></script>
    <script type="text/javascript" src="/resources/js/jquery/moment.min.js"></script>
    <script type="text/javascript" src="/resources/js/jquery/datetime-moment.js"></script>


затем перед вызовом плагина указал настройку

$.fn.dataTable.moment( 'DD-MM-YYYY');
 
            $(selectorTable).DataTable({
                paging: true,
       
            });


не сортируется и не ищет дату.

Также не работает сортировка слов из кириллицы или поиск.

Как можно это настроить ?
Ответить с цитированием
  #2 (permalink)  
Старый 15.02.2019, 17:48
Аспирант
Отправить личное сообщение для alex-romanov Посмотреть профиль Найти все сообщения от alex-romanov
 
Регистрация: 02.02.2019
Сообщений: 67

сортировка работает и для кириллицы, а также даты сортируются, только для тех данных, которые были получены при загрузке страницы.
Если данные были отредактированы на странице, но не отправлялись на сервер для обновления и затем не обновлялись на странице клиента, тогда сортировка для них не будет работать.

решено
Ответить с цитированием
  #3 (permalink)  
Старый 15.02.2019, 17:50
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Даты в формате DD-MM-YYYY нельзя сортировать так как результат будет все равно не верным, только в европейском формате YYYY-MM-DD, если сравнивать строковые значения, а лучше сравнивать метки времени.
Ответить с цитированием
  #4 (permalink)  
Старый 15.02.2019, 18:10
Аспирант
Отправить личное сообщение для alex-romanov Посмотреть профиль Найти все сообщения от alex-romanov
 
Регистрация: 02.02.2019
Сообщений: 67

Сообщение от laimas
Даты в формате DD-MM-YYYY нельзя сортировать так
я проверил даже даты с високосными годами, ошибок не нашел, сортируется по порядку

когда данные отправляются в mysql , они приводятся к формату YYYY-MM-DD.

Сортировка идет на клиентской части, ошибок не нашел.

Может на тысячах записей и появляются такие ошибки, но у меня такой базы нет, проверить не могу

Последний раз редактировалось alex-romanov, 15.02.2019 в 18:13.
Ответить с цитированием
  #5 (permalink)  
Старый 15.02.2019, 18:53
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от alex-romanov
я проверил даже даты с високосными годами, ошибок не нашел, сортируется по порядку
Не городите ерунды:

alert('12-03-2018' > '05-10-2018')


Это строки, и сравниваться они будут не правильно, и если для сортировки не применяется натуральная сортировка, то результат будет неверным.

А так верно:

alert('2018-03-12' > '2018-10-05')
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разница американского и российского формата даты rozhnov Общие вопросы Javascript 0 28.11.2012 22:32
Сортировка таблицы (даты) edmundantes Элементы интерфейса 4 17.05.2012 09:51
проверка формата даты на JavaScript, помогите простейшим примером tangens Общие вопросы Javascript 18 05.12.2008 16:20