非常不熟悉JavaScript,但我很确定这应该可行,但当然不是。请帮忙发现我的错误。
function calcShipping() {
var purchasePrice = document.input.purchasePrice.value;
var shippingPrice;
if (purchasePrice < 25) {
shippingPrice = 1.5;
}
else {
shippingPrice = (purchasePrice * .10 )
}
var totalPrice = (purchasePrice + shippingPrice) document.input.total.value = totalPrice;
}
//-->
</script>
<body>
<h1>Shipping and Handling Calculator</h1>
<form name="input">
Purchase Price:<input type="text" name="purchasePrice" size="15"><br />
<input type="button" value="Shipping Calculation" onClick="calcShipping()"><br /><br />
Total Cost:<input type="text" name="total" size="15"><br />
</form>
答案 0 :(得分:1)
您需要在此处分隔您的行:
var totalPrice = (purchasePrice + shippingPrice) document.input.total.value = totalPrice;
到
var totalPrice = (purchasePrice + shippingPrice);
document.input.total.value = totalPrice;
您的示例代码也缺少<script>
标记,但这可能是由于粘贴错误造成的。如果代码缺失,请在代码开头之前添加一个。
编辑:您可以使用parseInt
将 text 字段的值转换为整数进行处理来解决值错误:
var purchasePrice = parseInt(document.input.purchasePrice.value, 10);
答案 1 :(得分:0)
var totalPrice = (purchasePrice + shippingPrice) document.input.total.value = totalPrice;
看起来不对劲。你应该有一个分号,那些代码行应该是代码行,即。没有在同一条线上砸在一起。