简体   繁体   English

计算器的JavaScript代码在单独的文件中

[英]Javascript code for calculator in separate file

I have this Javascript in a separate file: 我在单独的文件中有此Javascript:

function calcularPontos_a()
{
    var totala = 0
    var a1 = parseFloat(document.getElementById("a1").value)  || parseFloat("0")
    var a2 = parseFloat(document.getElementById("a2").value)  || parseFloat("0") 
    var a3 = parseFloat(document.getElementById("a3").value)  || parseFloat("0")
    var a4 = parseFloat(document.getElementById("a4").value)  || parseFloat("0")
    var a5 = parseFloat(document.getElementById("a5").value)  || parseFloat("0")
    var a6 = parseFloat(document.getElementById("a6").value)  || parseFloat("0")
    var a7 = parseFloat(document.getElementById("a7").value)  || parseFloat("0")
    var a8 = parseFloat(document.getElementById("a8").value)  || parseFloat("0")
    var a9 = parseFloat(document.getElementById("a9").value)  || parseFloat("0")
    var a10 = parseFloat(document.getElementById("a10").value)  || parseFloat("0")
    var a11 = parseFloat(document.getElementById("a11").value)  || parseFloat("0")
    var a12 = parseFloat(document.getElementById("a12").value)  || parseFloat("0")
    var a13 = parseFloat(document.getElementById("a13").value)  || parseFloat("0")
    var a14 = parseFloat(document.getElementById("a14").value)  || parseFloat("0")                                  
    var a15 = parseFloat(document.getElementById("a15").value)  || parseFloat("0")
    var a16 = parseFloat(document.getElementById("a16").value)  || parseFloat("0")
    totala = ((a1 + a2 + a3 + a4 + a5+a6+a7+a8+a9+a10+a11+a12+a13+a14+a15+a16)/100)*9
    return totala.toFixed(2)

}   

and call this function in this way on my html page: 并以这种方式在我的html页面上调用此函数:

<input type="submit" value="Calcular" id="btnCalcular" class="btn" onClick="calcularPontos_a();window.location.reload()">

This is working great on Firefox, but on IE, Chrome and Safari is not working! 这在Firefox上运行良好,但在IE,Chrome和Safari上却无法运行! Any clue? 有什么线索吗?

This is mostly a simplification of your existing code but it might fix the issue. 这主要是简化了现有代码,但可以解决此问题。 Let me know if the problem persists. 让我知道问题是否仍然存在。

function calcularPontos_a() {

  var i,totala = 0;
  for(i=1;i<17;i++) totala += parseFloat(document.getElementById("a" + i).value) || 0;
  return (totala * 9 / 100).toFixed(2);

}

Edit: 编辑:

To answer your question in the comments, use this version: 要在评论中回答您的问题,请使用以下版本:

function calcularPontos_a() {

  var i,totala = 0;
  for(i=1;i<17;i++) totala += parseFloat(document.getElementById("a" + i).value) || 0;
  document.getElementById("link-01").innerHTML = "PONTOS GRUPO A: " + (totala * 9 / 100).toFixed(2) + " PTS";

}

Use this button: 使用此按钮:

<button id="btnCalcular" class="btn" onClick="calcularPontos_a();">Calcular</button>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM