Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Не сортировать один столбец таблицы (https://javascript.ru/forum/css-html/63854-ne-sortirovat-odin-stolbec-tablicy.html)

Leon2110 04.07.2016 17:32

Не сортировать один столбец таблицы
 
Здравствуйте. Возникла необходимость сделать сортировку html таблицы, кликая на заголовки. Нашел в сети такой скрипт: http://tablesorter.com/docs/#Demo
Применил его к своей таблице и все заработало как нужно, только:
Первый столбец в моей таблице это "Номер по порядку" и данные там идут 1, 2, 3... И когда я применяю сортировку по любому из столбцов, цифры из первой колонки перемешиваются.
Можете подсказать как запретить движения первой колонки? Чтобы данные там были неизменны.

Leon2110 04.07.2016 17:37

Пробовал сделать колонку "номер по порядку" отдельной таблицей, расположил ее левее основной. Но некоторые строки таблицы имеют разную высоту в зависимости от текста и получается они не совпадают по размерам((

рони 04.07.2016 17:59

Leon2110,
уберите цифры поставьте css счётчик

Leon2110 06.07.2016 10:29

Благодарю. Спасибо за совет, все получилось.

Leon2110 06.07.2016 11:07

Появилась новая проблема(( Эта колонка с нумерацией не выводится на печать (а это одна из главных задач) и немного не нравится что она начинается от шапки. Нашел вот такой код на js:

$('table tr').each(function(i) {
    var number = i + 1;
    $(this).find('td:first').text(number);
});


Он работает отлично, но нумерация начинается с 2-ки, а нужно с 1 (видимо 1 пропускается из-за заголовка таблицы).

Можно ли в этом коде сделать нумерацию на 1 меньше?
И подскажите как выполнить его еще раз по нажатию кнопки? (не обновляя страницу).

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

рони 06.07.2016 11:13

Leon2110,
пример минимальный, структура таблицы, какую хотите получить

Dilettante_Pro 06.07.2016 11:27

Leon2110,
Цитата:

Сообщение от Leon2110
Можно ли в этом коде сделать нумерацию на 1 меньше?

Убрать +1 в строке 2

Leon2110 06.07.2016 11:29

Вот посмотрите на живом примере:
http://doc.kalitva-land.ru/otchet/otchet.html

Выберете за прошлый месяц документы (за этот нет еще), живая таблица.

В начале на php в цикле цифры проставлялись, теперь благодаря совету убрать +1 на js. Но при клике на шапку, меняем сортировку и данные сбиваются, нужно сделать кнопку для повторного выполнения скрипта, либо чтобы он выполнялся при клике на шапку сортировки.

рони 06.07.2016 11:37

Цитата:

Сообщение от Leon2110
Выберете за прошлый месяц документы

??? :)

Leon2110 06.07.2016 11:41

Ну чтобы увидеть таблицу, нужно на html форме заполнить две даты)
к примеру 20.06.2016 - 30.06.2016 и нажать "Сформировать"

Потом запустится php обработчик который вытащит из базы нужные данные. Он выводит их в форме html таблицы, я про эту таблицу имею ввиду всю тему) В ней первая колонка это "номер по порядку"

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


Получилось сюда попасть?)


Часовой пояс GMT +3, время: 15:01.