Javascript 显示结果闪烁的Inner.HTML

Javascript 显示结果闪烁的Inner.HTML,javascript,html,innerhtml,Javascript,Html,Innerhtml,为什么“result”的输出会闪烁您应该将字符串转换为数字,因为在Javascript中,当您尝试从输入中获取值时,默认情况下它是字符串。并使用模板文本,而不是连接字符串 function BMI(){ var h = document.getElementById('height').value; var w = document.getElementById('weight').value; var bmi= w/(h/100*h/100); var bmi2 = (bmi.toF

为什么“result”的输出会闪烁

您应该将字符串转换为数字,因为在Javascript中,当您尝试从输入中获取值时,默认情况下它是字符串。并使用模板文本,而不是连接字符串

function BMI(){
var h = document.getElementById('height').value;
var w = document.getElementById('weight').value;

  var bmi= w/(h/100*h/100);
  var bmi2 = (bmi.toFixed(2));

document.getElementById("result").innerHTML = " your BMI is " + bmi2;

}

是否多次调用BMI()函数?它可能会多次更新id结果元素。您尝试了哪些方法来解决此问题?您至少应该共享一个完整的工作示例html是

//这是因为我在html?thx中使用了onClick=“BMI()”,但这并不能解决闪烁的问题。您是否在submit type按钮中添加了onClick事件?
function BMI(){
  var h = Number(document.getElementById('height').value);
  var w = Number(document.getElementById('weight').value);

  var bmi= w/(h/100*h/100);
  var bmi2 = (bmi.toFixed(2));

  document.getElementById("result").innerHTML = `Your BMI is ${bmi2}`;

}