Доработка заказа на Javascript (jQuery)

  • Опубликовано 3 года назад
  • Просмотры 3
  • Закончить проект

Описание

Сайт: prints-studio.ru/
Текущий настроенный функционал можете проверить, нажимая на Заказать на ассортименте (печати и пр.)

Нужна помощь со скриптом заказа.

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

Товаров 4 типа:
1 – печати, имеющие доп стоимость, при изготовлении срочно (+300руб. к базовой цене) / по оттиску (+100руб. к базовой цене) / по оттиску срочно (+400руб. к базовой цене)
+ они имеют возможность выбора макета печати из еще 1ого всплывающего окна (это сказать необходимо для понимания разбивки в имеющемся скрипте);

2 – штампы. – те же условия, что у печатей (выше),но без возможности выбора макета;

3 – факсимиле – доп. стоимость только "срочно" (+300руб. к базовой цене),без возможности выбора макета;

4 – доп. товары – только одна цена, без выбора макетов.

Исходя из этого, нужен следующий функционал (будет продублирован на скриншоте):

1. Необходимо иметь возможность переключать количество выбранных товаров для каждого в отдельности по нажатию на расположенные над и под input'ом кнопки + и -;

2. Необходимо, чтобы (для товаров, в которых это предусмотрено) при переключении двух input'ов стоимость товара менялась в соответствии с условиями (срочно / по оттиску / по оттиску срочно)
!при этом, самое важное, что если пользователь сначала увеличил количество (пункт 1),то изменения в стоимости товара сразу менялась и подставлялись в соответствующее поле с ценой и далее участвовали в подсчете количества, если пользователь будет его менять;

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

<input style='display:none;' type='checkbox' name='zakaz[]' value="elemName + ' | x' + count + ' | ' + srochno + ' | ' + po_ottisku +' | ' + maket" checked>"
,где:
itemName – переменная, передающая имя товара (в текущем скрипте передается)
count – количество – актуальное количество, выбранное для данного товара (перезаписывается, при изменении количества)
srochno – нужно передать текстом "срочно", если соответствующий input:checked
po_ottisku – нужно передать текстом "по-оттиску", если соответствующий input:checked
maket – выбранный пользователем макет (только для товаров, у которых есть соответствующий выбор – их отсев в текущем скрипте уже реализован)

4. Настроить передачу номера макета, который выбирается во всплывающем окне, в <input name='zakaz[]' (указанный выше). Скрипт открытия окна и выбора макета сделан, передается по классу,
а нужно доработать до правильной передачи в текущий товар, в котором было вызвано окно выбора макета.

5. Настроить автоматический подсчёт суммы заказа с учетом вышеизложенных условий (выводится отдельным span с уникальным id)
+ продублировать данное значение вот так: $(".contact-form.order [name=summa]").val(endSumm);
При пересчетах сумму обновлять.

По любым вопросам, буду активно помогать и подсказывать.

Опубликовано 3 года назад