Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Калькулятор доставки по регионам РФ (https://javascript.ru/forum/dom-window/64118-kalkulyator-dostavki-po-regionam-rf.html)

JimHudson 20.07.2016 18:44

Калькулятор доставки по регионам РФ
 
Добрый день!
Есть пример скрипта внешнего калькулятора.
Определяет стоимость доставки в зависимости от даты месяца.

var myCalculator = function(day){
// стоимость доставки
var cost = 0;
switch(day) {
// каждое первое число месяца стоимость равна 100у.е.
case 1: cost = 100; break
// каждое двенадцатое число месяца стоимость равна 200у.е.
case 12: cost = 200; break
// каждое тридцать первое число месяца доставка бесплатна (таких дней всего 7 в году)
case 31: cost = 0; break
// по остальным дням мы не так щедры, доставка 500у.е.
default: cost = 500;
}
// если поле custom_delivery_tax не существует
if($('input[name="custom_delivery_tax"]').length == 0){
// добавить его
$('#checkout-form').append('<input type="hidden" name="custom_delivery_tax" value="0">');
}
// запись стоимости доставки в поле custom_delivery_tax
$('input[name="custom_delivery_tax"]').val(cost);
}

Необходимо переделать, чтобы считал доставку по регионам.
Есть всего-лишь 4 группы регионов, каждый со своей стоимостью.
Например:
1) Выбираю способ доставки
2) Выходит окно Ajax ("Введите регион доставки"-пустое поле-пример ввода- кнопка "ок")
3) Согласно условий вычисляет стоимость доставки и прибавляет к общей стоимости.

P.S.Скрипт для платформы Ucoz.

Задача по сути простая, но я еще чайник в javascript.

Помогите пожалуйста с кодом.:help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help: :help:

Rise 20.07.2016 19:11

JimHudson, что за окно Ajax?

JimHudson 20.07.2016 19:18

Rise, пример.
Есть 4 способа доставки.
Я выбираю чекбокс второго способа и на экране появляется окошко описаное выше. в нем ввожу регион и нажимаю ок.

Или быть может вместо окна Ajax появляется поле для ввода региона под способом доставки

Rise 20.07.2016 19:29

JimHudson, что за 4 группы регионов например? А если я из другого региона которого нет в группах?

JimHudson 20.07.2016 19:37

Rise, перечислены будут все регионы РФ.
Например:
1) Московская обл, Ленинградская обл - 200 р.
2) Омская обл, Красноярский край - 300 р.
и тд.
3) Для тех регионов которых нет (например: Зарубежье) - 650 р.

Должны перечисляться регионы и для каждого фиксированная стоимость. Я так понимаю.

А может возможно не расписывать условие каждого региона, а перечислить через запятую и присвоить стоимость.

Rise 20.07.2016 20:13

JimHudson, может не через запятую, а в <select> все регионы загнать?

JimHudson 20.07.2016 20:32

Rise, суть в том, что я знаю что хочу, но не представляю как технически это сделать. Потому и прошу помощи.

warren buffet 20.07.2016 20:37

/*
 региональная цена применяется как понижающий или повышающий коэффициент 
 то есть нормализуется относительно базовой цены в диапазоне от 0 до 1, тогда надо умножать
 или выдается как абсолютная величина региональной поправки, то есть от -Х до +Х руб
 тогда надо прибавлять, или тупо выдается окном аякс, чо
*/
var rc='Выходит окно Ajax;';

var cost = 500+rc;

switch(day) {
	case 1: cost = 100+rc; break
	case 12: cost = 200+rc; break
	case 31: cost = 0+rc; break
}

warren buffet 20.07.2016 20:39

Цитата:

Сообщение от JimHudson
я знаю что хочу

Чтоб за тебя все сделали, а ты получку получил. )))

JimHudson 20.07.2016 20:50

warren buffet,какую получку?)))Я безработный))) Это для себя. Весь день убил, чтоб хоть один пример найти. Изучаю html и css, а вот до javascript еще далеко, а надо.


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