我在我创建的网站上实现此计算器时遇到问题。我想我使用了错误的javascript来创建简单的计算,这是以下数学计算:((清单价格 - rrp)/清单价格)* 100
请注意,我知道数值不是数字,请用任何数字替换它们。它仍然无法运作。
这是为了获得列表和RRP的折扣百分比值。
请在HTML之前查看代码:
<script type="text/javascript">
discountFinal(#OriginalPrice, #ListPrice);
</script>
<div id="discountCode">
<span id="spanish"></span>
<span id="spanishtwo">%</span>
</div>
使用Javascript:
var discountFinal = function (firstly, secondly) {
var totalfirst = secondly - firstly;
var totalsecond = totalfirst / secondly;
var totalthird = totalsecond * 100;
if (document.getElementById("discountCode").innerHTML === null) {
document.getElementById("spanishtwo").innerHTML.replace("%", "")
} else {
document.getElementById("spanish").innerHTML = Math.floor(totalthird / 5) * 5
}
};
我不认为我正在调用html中的函数。请有人帮忙解决这个问题。
答案 0 :(得分:2)
我不确定您收到的错误,但似乎您在定义之前调用discountFinal
函数。当您移动呼叫时,它开始工作:
http://jsfiddle.net/bmonty/xwzhY/4/
OP发表评论后编辑。
您只需要确保在页面顶部定义了discountFinal
功能,之前在任何地方调用它。
这将有效:
<script type="text/javascript">
var discountFinal = function(a, b){};
</script>
<script type="text/javascript">
var result = discountFinal(1, 2);
</script>
但这会引发错误:
<script type="text/javascript">
var result = discountFinal(1, 2);
</script>
<script type="text/javascript">
var discountFinal = function(a, b){};
</script>
要获得一些说明,请在浏览器的HTML页面上查看源代码,以查看生成的页面的外观。这应该指出操作的顺序搞砸了。
答案 1 :(得分:1)
如果您在函数存在后调用它,它可以正常工作:http://jsfiddle.net/xwzhY/2/
只需确保代码中的函数早于您使用它。或者使用函数语句而不是分配给变量的函数表达式来声明它:
function discountFinal(firstly, secondly){
...
答案 2 :(得分:0)
在你的perl变量周围试试“”,你需要传递值