单独文件中计算器的Javascript代码
我将此Javascript保存在一个单独的文件中:单独文件中计算器的Javascript代码,javascript,cross-browser,Javascript,Cross Browser,我将此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 =
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不起作用!有什么线索吗?这主要是对现有代码的简化,但可能会解决这个问题。如果问题仍然存在,请告诉我
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);
}
函数calcularPontos_a(){
var i,totala=0;
对于(i=1;i)在函数运行完成后立即重新加载页面有什么意义?控制台日志中出现哪些错误?定义“不工作”.控制台中有什么?@OtavioLipari您在函数返回后重新加载页面,显然您不再看到结果。表现异常的是Firefox,而不是Chrome和IE。
parseFloat(“0”)?!纯0
有什么问题吗?太好了!它正在工作!单击按钮后在HTML标记上显示此函数结果的最佳方式是什么?我使用的是PONTOS GRUPO a:document.write(calcularPontos_a())PTS
谢谢@ic3b3rg!另外,正如其他人已经提到的,您不应该重新加载页面或使用提交。请使用我添加到答案中的按钮或类似按钮。
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>