Скрипт для массовой формировки параметров для GET запроса
1000 UAHЕсть HTML страница наподобие Excel таблицы. У страницы есть столбцы и строки.
Данные берутся из БД ( это нас не интересует)
Над каждым столбцом есть треугольник, при клике на который открывается специальная форма.
https://i.postimg.cc/mr0RVrw2/1.jpg
Данная форма служит для ввода значение. После того как мы вводим значение и нажимаем Apply filter к нынешней ссылке добавляется параметр для гет запроса. В качестве название параметра служит id треугольника на который мы кликнули
https://i.postimg.cc/d3mDCCGy/2.jpg
В качестве значение параметра будет та которую вы вводим в поле которое открывается при клике на треугольник.
Мы кликнули на треугольник с id home и поэтому название параметра будет таким же, т.е home.
Допустим мы в поле (которое открылось после клика на треугольник с id home) ввели значение Namos и нажали на кнопку Apply filter
Значит сформируется параметр home=Namsos и добавится к нынешней ссылке и откроется полученная ссылка. https://currenturl.com/demo.html&home=Namsos
Если мы после этого кликнем на треугольник под названием Away и введем туда значение для примера Tangmoen то сформируется очередной параметр где название будет id треугольника, т.е away а его значение Tangmoen и получается такой параметр away=Tangmoen. Данный параметр так же добавляется к нынешней ссылке и открывается полученная ссылка https://currenturl.com/demo.html&home=Namsos&away=Tangmoen
И так далее для остальных.
Есть разные виды форм
Обычная с инпутом https://i.postimg.cc/mr0RVrw2/1.jpg
С выборкой (select) https://i.postimg.cc/QxP82GJt/3.jpg
С чекбоксами https://i.postimg.cc/pdvHv2h2/4.jpg
Логика работы у всех одинаковая. Разница только в том что в инпут можно вводить любое значение а в других только готовые.
Теперь перейдем к тому как исключать эти параметры из нынешней ссылки
После того как мы вводим значение и применяем его, фоновый цвет ячейки с треугольником становится красным. Это визуально говорит нам о том что в ссылке существует параметр с id ячейкой у которого фоновый цвет красный. При клике мы видим что значение которую вы ввели отображается в инпуте. Для того чтобы отменить эту операция мы нажимаем на Delete filter
https://i.postimg.cc/02mtG7jN/5.jpg
После этого скрипт исключает из текущей ссылки параметр у которого название такое же как id ячейки где стоит треугольник и где мы нажали на Delete filter из текущей ссылки и открывает полученную ссылку. Т.е из ссылки исключается параметр away=Tangmoen
Эти параметры можно исключать в ручном режиме по отдельности нажимая Delete filter везде где мы ввели значение или же можно за один клик удалить все параметры с помощью кнопки
Reset all filters https://i.postimg.cc/v8KjtQv0/6.jpg
Все что выше описано логика работы скрипта. Теперь к сути задачи
Задача состоит в том чтобы сформировать параметры массово которые будут добавляться к текущей ссылке и после открываться. Что значит массово. Выше описана логика как добавляются параметры к ссылке. Как и описано этот процесс происходит по очереди. Т.е сначала мы кликаем на определенный треугольник, вводим значение в после которое открывается и нажимаем Apply filter и после открывается новая полученная ссылка с этим параметром. После того как новая ссылка открылась кликаем на другой треугольник, вводим значение и нажимаем Apply filter и ждем когда откроется новая полученная ссылка. И так далее процесс продолжается по очереди . На это уходит определённое время. Потому что после каждого раза когда мы вводим значение нужно ждать загрузки страницы. Задача состоит в том чтобы сформировать все эти параметры, добавить их в текущей ссылке и открыть полученную ссылку за раз. Теперь вопрос куда вводить, где хранить все эти значение чтобы скрипт мог взять все эти значение и сформировать новую ссылку с параметрами и открыть ее
Давайте посмотрим на это видео
https://drive.google.com/file/d/1EtsCR3nePlFKayjglpREJHNjRfhzykIE/view?usp=drive_link
Как видим если вводит значение но не нажать Apply filter то данные значения хранятся в формах куда мы их ввели. Они хранятся в DOM-дереве страницы пока сессия активная. Т.е если перезагрузить то они пропадают. Значит скрипт может взять значение из форм и с помощью их id сформировать параметры , добавлять их в текущую ссылку и открыть эту ссылку.
Допустим мы кликаем на треугольник под Away и вводим туда Tangmoen. Не нажимаем на Apply filer. После нажимаем на треугольник под Home и вводим туда Namsos тут тоже не нажимаем на Apply filer
Значит у нас две формы куда мы ввели значение но не применили. Теперь они хранятся в DOM-дереве страницы
Нужно сделать отдельную кнопку как Reset all filters . Назовём ее Apply all filters
Нажимаю на Apply all filters, скрипт парсит все формы, получает список всех форм, где значение не пустое, сформирует параметры (название это id а значение это то что мы ввели в форму) , добавляет их к текущей ссылки и открывает полученную ссылку. Таким образом мы за раз сформировали больше одного параметра и сэкономили много времени.
Если мы посмотрим на название класса всех треугольников, то увидим, что они одинаковые
https://i.postimg.cc/FHbSg5qY/7.jpg
Скрипт должен поддерживать парсинг из всех видов форм (инпут, чекбокс, селект)
Самое главное он не должен конфликтовать с другими скриптами которые уже присутствуют в коде.
Прикрепил архив где HTML файл с скриптами
Приложения 1
Отзыв заказчика о сотрудничестве с Олегом Патрушевым
Скрипт для массовой формировки параметров для GET запросаОтличный исполнитель. Сделал все качественно и быстро
Отзыв фрилансера о сотрудничестве с Иваном Паченко
Скрипт для массовой формировки параметров для GET запросаОтличный заказчик. Рекомендую.
-
612 21 0 Здравствуйте! Могу сделать ваше задание. Приступить могу сейчас.
-
1358 76 6 3 Очень хорошо описано ТЗ, все понятно, сделаю достаточно быстро и качественно
-
3698 111 3 5 Добрый день, Иван
Реализую необходимый функционал согласно ТЗ.
С уважением, Юрий
-
436 11 2 2 Добрый день.
Прошу рассмотреть возможность сотрудничества.
С уважением, Артем.
-
520 13 0 Добрый день. Могу реализовать данный скрипт на NodeJS. буду рад сотрудничать
Актуальные фриланс-проекты в категории Javascript и Typescript
Поддержка и развитие сайта клининговой компании
906 UAH
Ищу веб-разработчика / веб-мастера для долгосрочной поддержки и развития сайта клининговой компании. Сайт: https://donely.ca О проекте DoneLy Home Services — компания по предоставлению услуг уборки в Канаде, которая активно развивается и расширяет географию работы. Ищу… Javascript и Typescript, Веб-программирование ∙ 20 часов 52 минуты назад ∙ 55 ставок |
Разработка сайта по ТЗ на FramerНеобходимо сделать сайт по этим параметрам, что в ТЗ https://docs.google.com/document/d/1ODO2C9Krb4AaMiJz9wfbNzWlAyA2FwCCHL8r0biajUY/edit?usp=sharing Назовите реальный рейд на основе этого дизайна HTML и CSS верстка, Javascript и Typescript ∙ 1 день 22 часа назад ∙ 26 ставок |
Разработка интерактивной карты Palworld для сайтаНеобходимо разработать интерактивную карту Palworld по примеру: https://palworld.gg/map Нам нужна не просто статическая картинка, а полноценная интерактивная карта, где пользователь может смотреть локации, включать / выключать категории объектов, искать нужные точки и… HTML и CSS верстка, Javascript и Typescript ∙ 3 дня 12 часов назад ∙ 32 ставки |
Разработка платформы AM Mobility (автосервис, парковка, страхование, аренда автомобилей)
257 282 UAH
Ищем команду или опытного Full Stack разработчика для создания MVP платформы AM Mobility. AM Mobility — это единая цифровая экосистема для автомобилистов, объединяющая в одном приложении и веб-платформе: парковку; автосервис; шиномонтаж; автомойку; аренду автомобилей;… Javascript и Typescript, Веб-программирование ∙ 8 дней 19 часов назад ∙ 119 ставок |
Gsap анимации
1000 UAH
Добрый день. Нужно внести правки в текущем проекте. Нужен специалист, который хорошо работает на gsap/lenis Нужно сделать анимацию карточек. Подробное ТЗ здесь: https://www.figma.com/design/5bLEJudN5LPpB9ZSoJa2Eb/Untitled?m=auto&t=qwyluUctL1lrMNvh-6 Нужно… Javascript и Typescript, Веб-программирование ∙ 9 дней назад ∙ 21 ставка |