Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Калькулятор для сайта - JavaScript (https://javascript.ru/forum/dom-window/73851-kalkulyator-dlya-sajjta-javascript.html)

Niklop32 21.05.2018 23:02

Калькулятор для сайта - JavaScript
 
Здравствуйте, есть код который кое-как написал, нужен калькулятор на сайт для доставки, который будет показывать фиксированную стоимость, за определенное кол-во товара.

Допустим:
1 ед. товара =600р(доставка)
2 ед. товара =800р(доставка)
3 ед. товара =1200р(доставка) и тд.
Помогите изменить под нужный.
[
<script type="text/javascript" src="http://mydelivery.ru/delivery.js"></script>
<script type="text/javascript">
    $(function(){
        alert('Выберите пункт самовывоза');
    });
</script>

j0hnik 21.05.2018 23:04

HTML есть?

Niklop32 21.05.2018 23:34

Нету, там можно вставить только JS

рони 21.05.2018 23:44

Niklop32,
ваш вопрос из разряда ...

j0hnik 21.05.2018 23:46

var x = prompt('Сколько кокаина вы хотите купить?', 1), dost;
		if(x == 1) dost = '600p';
		else if(x == 2) dost = '800p';
		else if(x == 3) dost = '1200p';
		else dost = 'Много';
			alert('Доставка будет стоить '+ dost)


:)

Niklop32 22.05.2018 00:03

Есть интернет-магазин, на движке insales, и при оформления товара, когда уже допустим выбрано два товара, нужно что бы выпал расчет доставки (то есть условно говоря 2ед=800р) значит выпадает сразу 800р за доставку.
Туда можно вставить только kod js

j0hnik 22.05.2018 00:15

вместо propmt поставьте количество товара и все заиграет.

Niklop32 22.05.2018 02:10

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

просто он должен считать по кол-ву вы браного товара с фиксированной стоимостью.

laimas 22.05.2018 07:50

Цитата:

Сообщение от Niklop32
1 ед. товара =600р(доставка)
2 ед. товара =800р(доставка)
3 ед. товара =1200р(доставка) и тд.

Странная закономерность. Доставка учитывает вес и объем занимаемый местом. Как ни крути выше указанные цены никак не вяжутся с доставкой.

Niklop32 22.05.2018 13:19

Вложений: 1
Кода у меня нету, я делаю интернет магазин на движке insales.

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

Вот в этом движке еть способ добавление внешней доставки.

Мне и нужен такой способ, что бы фиксировано было
1товар=400руб доставка
2 товара =600 руб доставка
и тд.

Но проблема в том ,что код туда можно встатить только js, а я не особо любительский программист, проще говоря, вот что я смог написать, я про мой код.
Это максимум)

laimas 22.05.2018 14:57

Niklop32,

а за 17 товаров цена доставки сколько?

Nexus 22.05.2018 15:05

laimas, вероятно 400 + 17*200 = 3800

laimas 22.05.2018 15:09

Nexus,

если посмотреть на цены показанные ранее, то не получается. И вообще доставку так не считают.

Nexus 22.05.2018 15:32

laimas,
Цитата:

Сообщение от laimas
если посмотреть на цены показанные ранее, то не получается

Windows калькулятор не умеет расставлять приоритеты операциям.
Цитата:

Сообщение от laimas
И вообще доставку так не считают.

Если автор сам будет развозить товары, то он может указать любую стоимость своих услуг.
Пользоваться ими или нет каждый клиент решит для себя сам.
Другое дело, если он таким образом рассчитывает стоимость доставки для какой-нибудь ТК.

laimas 22.05.2018 15:40

Причем тут Windows, если

Цитата:

Сообщение от Niklop32
Допустим:
1 ед. товара =600р(доставка)
2 ед. товара =800р(доставка)
3 ед. товара =1200р(доставка) и тд.

Не получается N * 200 никак. Поэтому я и задаю вопрос. А сам ли он возить собирается или есть услуги ТК, это иной вопрос. А ТК так доставку не считает.

Nexus 22.05.2018 15:45

Цитата:

Сообщение от laimas
Не получается N * 200 никак

Я совсем дурак, наверное, но все получается.
Точно дурак :)
<input type="number" min="1" id="input">
<div id="price"></div>
<script>
input.oninput=function(){
    let val=+this.value.trim();
    price.textContent=(val+Math.floor(val/3))*200+400;
};
</script>

laimas 22.05.2018 15:51

А почему именно N * 200 + 400?

3 * 200 + 400 = 1200?

Nexus 22.05.2018 15:55

laimas, я ошибся.
Формулу подогнал под примеры стоимости тс.

laimas 22.05.2018 15:59

Цитата:

Сообщение от Nexus
Формулу подогнал под примеры стоимости тс.

Как раз и не получается под то, что указано у него. )

Поэтому и задается вопрос, чтобы автор подумал о том, что 1 - 600, 2 - 800, а 3 - 1200, это из ряда вон, и что-то тут не так.

А перевозка учитывает расстояние, объем и вес места, за которое платит ТК с учетом наценки своей, плюс чисто ее услуги по доставке.

Nexus 22.05.2018 16:09

Цитата:

Сообщение от laimas
Как раз и не получается под то, что указано у него. )

Я её в 15:54 обновил в 16-м посте.

Цитата:

Сообщение от laimas
А перевозка учитывает расстояние, объем и вес места, за которое платит ТК с учетом наценки своей, плюс чисто ее услуги по доставке.

Ни разу не приходилось писать расчет стоимости доставки (расчет - буквально).
Обычно все сводится к вычислению массы груза (+ габариты, если это возможно) и идентификации населенного пункта клиента, все остальные вычисления производят серверы ТК.
Остается обработать ответ и добавить к стоимости некоторую сумму.

laimas 22.05.2018 16:15

Цитата:

Сообщение от Nexus
Обычно все сводится к вычислению массы груза (+ габариты, если это возможно) и идентификации населенного пункта клиента

Зайдите на сайт любой ТК и посчитайте, там же посмотрите, что учитывается при перевозках в тех или иных случаях.

Nexus 22.05.2018 16:29

Цитата:

Сообщение от laimas
Зайдите на сайт любой ТК и посчитайте, там же посмотрите, что учитывается при перевозках в тех или иных случаях.

Зашел на сайт СДЭК'а, все как я и писал.
Откуда, куда, масса.
Опционально: габариты, описание.

laimas 22.05.2018 16:55

Ну и какие выводы?

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

Когда мы видим, что "доставка по Москве в пределах МКАД" бесплатная, это обман, никто бесплатно возить не будет, просто включат расходы в цену товара. А за пределы МКАД + за М км дополнительно.

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

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

Однозначно единица товара должна задавать размеры и вес, а также тип упаковки. И к разным типам товаров ТК, как и почта РФ, предъявляют требования, которые и позволяют перевезти товар.

Если мне как покупателю магазин какую-то туфту считает, по которой я могу заплатить за перевозку как за полет до Луны, то я обложу такой магазин матом и вряд ли стану покупать. ;)


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