Привет,
Я пытаюсь написать решение для калькулятора цен формы заказа, используя отличный плагин расчета В моей форме есть две разные цены для каждой позиции: одна для количеств меньше 10 и одна для количеств сверх этой суммы.
Это код, который у меня есть:
$(document).ready(function() {
// bind the recalc function to the quantity fields
$("input[name^=qty_item_]").bind("keyup", recalc);
// run the calculation function now
recalc();
function recalc() {
var quantity = $("input[name^=qty_item_]").val();
var quantity_int = parseInt(quantity_str);
var threshold = 10;
if (quantity_int < threshold) {
var useprice = $("[id^=price_item_1_]");
} else {
var useprice = $("[id^=price_item_2_]");
}
$("[id^=total_item_]").calc(
// the equation to use for the calculation
"qty * price",
// define the variables used in the equation, these can be a jQuery object
{
qty: $("input[name^=qty_item_]"),
price: useprice
},
// define the formatting callback, the results of the calculation are passed to this function
function (s){
// return the number as a dollar amount
return "$" + s.toFixed(2);
},
// define the finish callback, this runs after the calculation has been complete
function ($this){
// sum the total of the $("[id^=total_item]") selector
var sum = $this.sum();
$("#grand_total").text(
// round the results to 2 digits
"$" + sum.toFixed(2)
);
}
);
}
});
Это близко, но useprice остается на значении, для которого оно установлено для первого элемента в массиве полей. Я думаю, что мне нужно каким-то образом привести расчет цены использования внутри цикла, но я застрял в том, как.
ОБНОВЛЕНИЕ: Демонстрационная страница здесь .
Как обычно, любая и вся помощь с благодарностью получена. TIA:)