我需要创建一个包含2个参数(price1
,price2
)的函数,这些参数应该一起添加,并且在将Vat
添加到文本字段后,结果将显示在文本字段中
总体而言,我需要有3个文本字段: price1 , price2 和结果。此外,按计算按钮后,应计算结果字段。
到目前为止,我已经提出了document.write
的返回函数,但它显然没有显示任何文本字段,如下所示:
function getTotalPrice(price1,price2,Vat)
{
var sum=price1+priceb;
var Vat=20;
return ((sum*Vat)*100)/100;
}
document.write(getTotalPrice(4,3));
我不知道如何创建可以计算Vat
的按钮并将其显示在第三个文本框中。
答案 0 :(得分:3)
使用输入标记创建按钮。做你想做的事的一个例子:
<input type="text" id="price1">
<input type="text" id="price2">
<input type="text" id="results">
<input type="button" value="Calculate" onclick="calculateResults()">
<script type="text/javascript">
function calculateResults() {
var price1Box = document.getElementById('price1');
var price2Box = document.getElementById('price2');
var resultsBox = document.getElementById('results');
resultsBox.value = getTotalPrice(price1Box.value, price2Box.value);
}
</script>
有更简洁的方法可以做到这一点,但这是最实用和最简单的方法。如果你想让getTotalPrice
工作,你需要Bryan发布的修补程序。
答案 1 :(得分:1)
的问题:
Vat
未被用作参数,即使使用了它,也会在代码中重新初始化并赋值为20. priceb
是一个错字。除此之外,代码似乎没有任何明显的问题。
function getTotalPrice(price1, price2, vat) {
vat = (vat === undefined? 20 : vat); // give vat a default value if empty
return (price1 + price2) * vat;
}
document.write(getTotalPrice(4, 3));
编辑:根据下面的评论,这是真的,我想我应该继续并简化这里的数学运算。如果提问者有一个不同的等式,他应该解释一下。
修改强> (vat === undefined?20:vat)是正确的,产生 undefined 以外的任何值,默认值为20。 (vat === undefined?vat:20)只会产生 undefined 或 20 。
答案 2 :(得分:0)
这应该做你想要的事情:
<script type="text/javascript">
function getTotalPrice(price1,price2)
{
var vat = 20;
return (((price1+price2) * vat) * 100) / 100;
}
function calculate()
{
var result = document.getElementById('result');
result.value = getTotalPrice(document.getElementById('price1').value, document.getElementById('price2').value);
}
</script>
<form>
<input type="text" id="price1" />
<input type="text" id="price2" />
<input type="text" id="result" />
<input type="button" value="Calculate" onclick="calculate()" />
</form>