@ArutaGerman

Как поменять местами?

В js ни бум-бум еще и сейчас делаю страницу, на которой понадобилось, чтобы при нажатии на стрелку "вверх" или "вниз" заказ поднимался выше или ниже на 1 строку соответственно.
Грубо говоря это должно быть так при каждом нажатии на кнопку (вверх или вниз) пока блок не займёт крайнюю позицию в том направлении куда его двигали:

блок 1
блок 2
блок 3
блок 4
,..
блок 10

При нажатии на кнопку вверху у "блока 4", нужно чтобы он стал на место "блока 3", а "блок 3" спустился на место "блока 4" и теперь "блок 4" получил номер 3 в таблице, а "блок 3" нумеруется как 4 и так до тех пор пока в ходе нажатий на кнопку вверх "блок 4" не станет первым в списке.

Подскажите, пожалуйста, как это сделать.
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
anatoly_kulikov
@anatoly_kulikov
Wordpress-разработчик
Первое, что пришло в голову:
- отправляем данные в массив
- отрисовываем массив, но кнопки элементов вешаем функции вверх/вниз

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

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

Можно вместо позиции в массиве ввести какой-нить произвольный ключ.

Скорее всего для этого уже написан плагин, нужно поискать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@FKV
Подключаем https://jquery.com/
И https://jqueryui.com/
Смотрим пример https://jqueryui.com/sortable/
Ниже есть view source смотрим и повторяем
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
от 60 000 до 90 000 руб.
UMA.TECH Москва
от 150 000 до 215 000 руб.
от 30 000 до 65 000 руб.
16 июл. 2019, в 00:49
15000 руб./за проект
15 июл. 2019, в 23:17
3000 руб./за проект
15 июл. 2019, в 23:03
1000 руб./за проект