所以...我的作业说...
创建一个名为 calcBMI()
的函数,该函数使用体重和高度文本框中的值执行计算,并将结果分配给 BMI 文本框。
使用 parseInt() 函数将值转换为整数。
通过使用 documentobject.getElementByID(name) 和每个文本框的 value 属性从函数内部引用文本框(换句话说,不要使用函数参数 AKA 将值传递给函数)。
添加事件监听器以调用 calcBMI() 函数
我在这里做到了。请记住,javascript 文件在 html 中被引用。每当我按下计算按钮时,什么都没有发生。
function calcBMI() {
var weight = parseInt(documentobject.getElementByID("weight"));
var height = parseInt(documentobject.getElementByID("height"));
var result = (weight * 703) / (height * height);
var textbox = documentobject.getElementById('Result');
textbox.value = result;
}
document.getElementById("submit").
addEventListener("click", calcBMI(), false);
最佳答案
我看到了 3 件事:
- 访问 DOM 对象而不是它的值
- 使用
documentobject
而不是document
- 调用函数而不是将其作为回调传递。
这里解决DOM元素问题:
var weight = parseInt(document.getElementByID("weight").value)
对其他变量使用相同的方法。
看起来您可能正在调用 calcBMI() 而不是将其作为回调 calcBMI 传递
.addEventListener("click", calcBMI, false);
看起来您引用的是 documentobject
而不是 document
。
var textbox = documentobject.getElementById('Result');
试试这个:
var textbox = document.getElementById('Result');
希望这对您有所帮助!
关于从文件调用 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46167767/