Javascript计算函数-不在html中计算

Javascript Calculation function - Not calculating in html

本文关键字:计算 html 不在 函数 Javascript      更新时间:2023-09-26

我在创建的网站上实现这个计算器时遇到问题。我认为我使用了错误的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中的函数。有人能帮忙吗。

http://jsfiddle.net/xwzhY/

我不确定您得到的错误,但似乎是在定义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页面上的源代码,以查看结果页面的外观。这应该指出操作顺序混乱的地方。

如果在函数存在后调用它,它可以正常工作:http://jsfiddle.net/xwzhY/2/

只需确保函数在代码中比使用它更早地声明即可。或者使用函数语句而不是分配给变量的函数表达式声明它:

function discountFinal(firstly, secondly){
...

尝试在perl变量周围放置",需要传递值