-2
我有一個計算價格的函數。變量totalPrice
計算選擇的總數。然後我寫totalPrice
到一個div。從函數中獲取變量並在事件中運行它
我的問題是,我在正文上運行更改事件,我試圖在更改事件中運行calcTotalPrice
函數,然後嘗試訪問totalPrice
變量,但它給了我未定義的變量錯誤。
如何從我的函數中獲取調整的totalPrice
變量並在事件中運行它?
function calcTotalPrice() {
var totalPrice = 0;
var discountPrice = 0;
if (package1.is(':checked') && package2.is(':checked')) {
$('.calendar-check:checked').each(function() {
var calSoloPrice = ($(this).data('solo-price'));
var calCombinedPrice = ($(this).data('combined-price'));
totalPrice += parseInt($(this).data('combined-price'));
discountPrice += calSoloPrice - calCombinedPrice;
});
$('.tp-pack-check:checked').each(function() {
var tpSoloPrice = ($(this).data('solo-price'));
var tpCombinedPrice = ($(this).data('combined-price'));
totalPrice += parseInt($(this).data('combined-price'));
discountPrice += tpSoloPrice - tpCombinedPrice;
});
$('#package-review-savings').html("<div class='discountMed'>You will be saving $" + discountPrice + " per order by bundling your product package.</div>");
}
else {
if (package1.is(':checked')) {
$('.calendar-check:checked').each(function() {
totalPrice += parseInt($(this).data('solo-price'));
});
}
if (package2.is(':checked')) {
$('.tp-pack-check:checked').each(function() {
totalPrice += parseInt($(this).data('solo-price'));
});
}
}
$('#package-review-total').html("$" + totalPrice);
};
$('body').on('change', function() {
calcTotalPrice();
console.log("Total Price" + totalPrice);
});
函數應返回的值,它計算,那麼你可以當你調用該函數將其分配給一個變量。 – Barmar
@Barmar嗯,如果我這樣做'var packagePrice = calcTotalPrice(); console.log(「總價 - 」+ packagePrice);'它打印爲UND。 – Paul
評論[如何在JavaScript中返回值](http://stackoverflow.com/q/5887386/215552)和/或閱讀[返回'關鍵字的文檔](https://developer.mozilla.org/ EN-US /文檔/網絡/的JavaScript /參考/語句/返回)。 –