我是js/jQuery的新手。原諒這個可怕的劇本。我迷路了。jQuery/js - 根據狀態和數量選擇選項計算稅額,小計和總計
*(與全局變量ifTaxRate更新的建議。)*
我想計稅,小計,總基於客戶的選擇狀態,以及訂購的數量和動態屏幕上顯示出來。
如果客戶來自愛達荷州,我試圖申請6%的銷售稅率。
選擇選項:
<select id="state" value="<?php echo $_SESSION['sstate'] ?>" name="state" class="required" >
<option value="">Select State</option>
<option value="AK">Alaska</option>
.
<option value="ID">Idaho</option>
.
.
<option value="WY">Wyoming</option>
</select>
<select id="orderquantity" name="orderquantity">
<option value="1">1 Bottle (30 Day Supply)</option>
.
.
<option value="8">8 Bottles (240 Day Supply)</option>
</select>
Div的顯示信息:
<div class="quantityselected"></div>
<div class="productprice"></div>
<div class="pricequantity"></div>
<div class="subtotal"></div>
<div class="tax"></div>
<div class="shipping"></div>
<div class="total"></div>
非常糟糕的JS嘗試:
<script type="text/javascript">
var ifTaxRate;
$(document).ready(function() {
$("#state").change(function() {
if ($(this).val() == 'ID') {
ifTaxRate = .06;
} else {
ifTaxRate = 0;
}
});
});
function doMath() {
var quant = parseInt(document.getElementById('orderquantity').value);
//change price here
var price = 69.99;
var tax = ifTaxRate;
//change flat shipping cost here
var shipping = 4.99;
var subtotal = quant * price;
var taxtotal = tax * subtotal;
var total = subtotal + tax;
$('.quantityselected').value = quant;
$('.productprice').value = price;
$('.pricequantity').value = subtotal;
$('.tax').value = taxtotal;
$('.shipping').value = shipping;
$('.total').value = shipping;
}
</script>
我按照Steve和Andrzej的建議嘗試過,但是,我的所有div仍然是空白的。我已經檢查了Chrome中的腳本,它正在傳遞。 – chasemb 2012-04-05 17:26:12
沒有問題,我查看了頁面的源代碼,並且無處找到函數doMath()被調用。你什麼時候想更新div?關於國家的變化? – 2012-04-05 17:54:03
我希望div的更新時a)。選擇的州是愛達荷州和b)。他們將1的初始數量更改爲其他值,並在屏幕上反映這些更改。就像我說的,我是js的超級新手...... :( – chasemb 2012-04-05 17:58:02