【发布时间】:2013-05-28 01:26:37
【问题描述】:
我使用下面的代码来获取总材料成本并添加销售税,然后添加任何运输成本并获取总价值并将其填充到 materialtotal 字段中,它完美地工作。
我的问题是,我现在需要从materialtotal 字段中获取总数并将其添加到名为labortotal 的字段的总数中,然后填充一个名为grandtotal 的字段。
function tax(){
var materialcost = document.getElementById( 'materialcost' ).value;
var shipping = document.getElementById( 'shipping' ).value;
var salestax = Math.round(((materialcost / 100) * 8.1)*100)/100;
var materialtotal = (materialcost * 1) + (salestax * 1) + (shipping * 1);
document.getElementById( 'materialcost' ).value = materialcost;
document.getElementById( 'salestax' ).value = salestax;
document.getElementById( 'shipping' ).value = shipping;
document.getElementById( 'materialtotal' ).value = materialtotal;
}
我的问题是我想我可以将materialtotal 添加到var 中,例如:
function getFinal(){
var materialtotal = document.getElementById( 'materialtotal' ).value;
var grandtotal = document.getElementById( 'grandtotal' ).value;
var labortotal = document.getElementById( 'labortotal' ).value;
var grandtotatal = (labortotal * 1) + (materialtotal * 1);
document.getElementById( 'grandtotal' ).value = grandtotal;
document.getElementById( 'labortotal' ).value = labortotal;
document.getElementById( 'materialtotal' ).value = materialtotal;
}
当我添加
onpropertychange="getfinal()
到materialtotal id标签,它使浏览器锁定。
如何让materialtotal 和labortotal 合计并填充grandtotal 字段?
【问题讨论】:
-
n*1 == n。我不明白...无论如何,乘法的优先级高于加法,因此您不需要括号。 -
@elclanrs:对
Number的隐式强制。 -
哦,我现在明白了。以前没见过。只需
+value,应该可以。 -
不要使用
onpropertychange事件 - 每次设置输入值时都会触发它,导致无限循环 -
为什么要更新
labortotal和materialtotal?你不会改变他们的价值观。
标签: javascript var