У меня есть два входа, где пользовательские типы width
и height
продукта (скажем, в мм). Таким образом, минимальная цена составляет 250 долларов США до width=50
и height=20
. Затем я хочу увеличить общую цену на 25 долларов каждый раз, когда ширина или высота отредактированы на 10 мм. Так что сумма должна составлять 275 долларов США, если w=60 and h=20
(или w=50/h=30
); $ 300 - при w=60 and h=30
...Расчетная цена на основе parseInt
Теперь с моим плохим знанием Jquery я сделал это чудовище https://jsfiddle.net/fkqotzzb/
var basePrice = 250;
var priceForSm = 50;
var price300 = basePrice + priceForSm;
var price450 = price300 + (priceForSm * 3);
var price700 = price450 + (priceForSm * 5);
var price950 = price700 + (priceForSm * 5);
$("#stwidth, #stheight").keyup(function() {
\t var stwidth = parseInt($("#stwidth").val(), 10);
\t var stheight = parseInt($("#stheight").val(), 10);
\t if (stwidth > 113) {
\t \t $("#stwidth").val("113");
\t }
if (stheight > 62) {
\t \t $("#stheight").val("62");
\t }
\t if (stwidth >= 50 && stheight >= 20 || stwidth >= 110 && stheight >= 10) {
\t \t $(".stamp-full-price span").html(basePrice);
\t }
\t if (stwidth >= 30 && stheight >= 60 || stwidth == 80 && stheight == 20 || stwidth >= 60 && stheight >= 30 || stwidth >= 40 && stheight >= 40) {
\t \t $(".stamp-full-price span").html(price300);
\t }
\t if (stwidth >= 110 && stheight >= 20 || stwidth >= 110 && stheight == 30 || stwidth >= 70 && stheight >= 30 || stwidth >= 60 && stheight >= 40 || stwidth >= 50 && stheight >= 50 || stwidth >= 40 && stheight >= 60) {
\t \t $(".stamp-full-price span").html(price450);
\t }
\t if (stwidth >= 110 && stheight >= 40 || stwidth >= 110 && stheight >= 50 || stwidth >= 90 && stheight >= 40 || stwidth >= 80 && stheight >= 50 || stwidth >= 60 && stheight >= 60) {
\t \t $(".stamp-full-price span").html(price700);
\t }
\t if (stwidth >= 100 && stheight >= 60 || stwidth >= 111 && stheight >= 50) {
\t \t $(".stamp-full-price span").html(price950);
\t }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="stwidth" id="stwidth" value="50" class="form-control input-xs" maxlength="3"> x <input type="text" name="stheight" id="stheight" value="20" class="form-control input-xs" maxlength="2"> мм
<div class="stamp-full-price">
Total: <span>250</span>
</div>
Здесь цены и размеры установлены вручную, но я не хочу, чтобы установить их так, было бы неплохо контролировать цену на width
и height
отдельно. Он также не охватывает все размеры корпусов, поэтому я не могу предсказать, какая цена может быть показана в конкретной ситуации, и это действительно монстр :).
У меня также есть еще несколько вариантов после размеров в виде радиостанций и флажков. Итак, как получить стоимость общей цены после размеров, определенных для добавления цены на радио/флажок?
вставить код в вопросе (не только ссылка на скрипке) – happymacarts
лучший сценарий выяснить какая-то формула, которую вам нужно рассчитать цену, основанную на размерах. затем добавьте это к функции в обработчике событий – happymacarts
@LukasLiesis, я слишком быстро читаю :(Я иду спать! Я удалю свой комментарий Orig, чтобы очистить нить – happymacarts