我有一个结帐页面,我正在尝试配置税。这是一个简单的税额。如果有人住在俄亥俄州,价值是1.065,如果他们在美国的任何其他州都没有。
我不是最擅长使用PHP的JavaScript,所以这可能就是我遇到困难的原因。我试图在不提交表单的情况下配置它。当客户必须单击下拉框以选择状态时,我希望此配置。我不会在本页后面提交表格,我希望他们立即看到价值。
我首先得到一个包含所有状态的数组列表。
$taxvalue['Ohio'] = 1.065;
$taxvalue['Wyoming'] = 1;
然后我为税额制作一个变量:
$taxed_state = 1.065;
$untaxed_state = 1;
然后我检查状态是否已设置并将加税变量添加到其中。
if(isset($taxvalue['Ohio'])){
$taxed_state;
} else {
$untaxed_state;
}
这就是我要用税来配置总额的方法。
$base_price = 0;
foreach($_SESSION['shopping_cart'] as $id => $product) {
$product_id = $product['product_id'];
$base_price += $products[$product_id]['price'] * $product['quantity'];
$shipping_price += $products[$product_id]['shippingprice'] * $product['quantity'];
}
$tax_price += $base_price * $taxed_state;
$total_price += $base_price + $shipping_price + $tax_price;
此时会显示税率,但我在此处未显示税率问题。我也不确定我是否正确编码,因此税收和总额将始终是正确的。
<p>Tax: <span class="floatright"><?php echo "$" . $tax_price //- $base_price;
进入州时的表格:
<label for="state">State</label>
<select type="text" class="mediuminputbar preview" id="ShipTostate" data-copy="#confirmstate" name="ShipTostate" required>
<option value=''>Select a State</option>
<?php
foreach($taxvalue as $key => $val) {
echo "<option value='$val'>$key</option>/n";
}
?>
</select>
我试图使用它的Javascript:
$(document).ready(function() {
$(function() {
var taxed_state = 0;
var base_total = 0;
$( "#taxvalue" ).change(function() {
if ($(this).val() == 'Ohio') {
taxed_state = 1.065;
}
else {
taxed_state = 1;
}
$('#taxed_price').val(base_total * taxed_state);
});
});
});
我不确定为什么这不起作用或我做错了什么。有没有人有任何想法?