![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Michael.de |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 22.3.2005 Где: Deutschland Репутация: 2 Всего: 9 |
Всем привет
Ситуация: Идёт обращение к БД. Она возвращает массив (JavaScript), на основании которого создаётся таблица (HTML). При клике по столбцу идёт сортировка строк (не важно: по возрастанию или убыванию, лексикографически или численно). В столбце могут находиться повторяющиеся значения. Вопрос: по какому принципу можно отсортировать строки, значения которых в сортируемом столбце одинаковы? P.S. Код пока не нужен... только мысли |
|||
|
||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: 12 Всего: 34 |
||||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Видимо по значению какого-нибудь другого столбца. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Michael.de |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 22.3.2005 Где: Deutschland Репутация: 2 Всего: 9 |
до сортировки (по имени):
2 Петя Петров 1991 3 Федя Жуков 1979 4 Вася Петров 1980 5 Петя Иванов 2001
4 Вася Петров 1980 2 Петя Петров 1991 5 Петя Иванов 2001 3 Федя Жуков 1979 Да, как вариант. Или их вообще не трогать |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Зависит от задачи: если не принципиально, то можно и не трогать, но, поскольку вопрос был "по какому принципу", то я и дал, как мне кажется, наиболее очевидный ответ. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| SkyCoder |
|
|||
|
Новичёк ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 26.6.2006 Где: 3-я планета от со лнца Репутация: нет Всего: нет |
По сути сортировка относится к интерфейсу пользователя. Ну так и смотри с точки зрения пользователя.
Так что на мой взгляд надо сортировать по последней сортировке. т.е. Если пользователь сначала отсортировал по возрастанию даты рождения, а потом по фамилиям, он сможет найти Ивановых отсортированных по дате рождения. |
|||
|
||||
| Се ля ви |
|
|||
![]() Java/SOAрхитектор ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 5 Всего: 127 |
в сортировочной функции возвращаешь ноль. Это приводит к тому, что в отношении одинаковых с точки зрения критерия сортировки элементов работает предыдущая сортировка (а вначале - изначальная сортировка). Это косвенно создаёт возможность настраивать сортировку по нескольким столбцам.
-------------------- |
|||
|
||||
| SkyCoder |
|
|||
|
Новичёк ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 26.6.2006 Где: 3-я планета от со лнца Репутация: нет Всего: нет |
не совсем понял про ноль..
Но вообщем - да , досточно сортировать не исходный список, а список после последней сортировки. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Функция Array.sort принимает в качестве аргумента функцию, являющуюся критерием сортировки, если она возвращает ноль, то сравниваемые элементы имеют одинаковый приоритет при сортировке. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| dstorm81 |
|
|||
![]() бездельник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1178 Регистрация: 18.1.2006 Где: (16RU) Репутация: 20 Всего: 39 |
http://forum.vingrad.ru/forum/topic-104050/view-all.html
тут было, примеры скриптов, если вдруг надо будет -------------------- на форуме с 8.12.2002 (http://forum.vingrad.ru/index.php?act=ST&f=10&t=4874&st=0#) |
|||
|
||||
| SkyCoder |
|
|||
|
Новичёк ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 26.6.2006 Где: 3-я планета от со лнца Репутация: нет Всего: нет |
dstorm81, Спасибо!
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |