0

我在一个单独的文件中有这个 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)

}   

并在我的 html 页面上以这种方式调用此函数:

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

这在 Firefox 上运行良好,但在 IE、Chrome 和 Safari 上不起作用!有什么线索吗?

4

1 回答 1

0

这主要是对现有代码的简化,但它可能会解决问题。让我知道问题是否仍然存在。

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);

}

编辑:

要在评论中回答您的问题,请使用此版本:

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";

}

使用此按钮:

<button id="btnCalcular" class="btn" onClick="calcularPontos_a();">Calcular</button>
于 2013-05-29T16:05:53.990 回答