从文件调用 Javascript 函数

标签 javascript

所以...我的作业说...

创建一个名为 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 件事:

  1. 访问 DOM 对象而不是它的值
  2. 使用 documentobject 而不是 document
  3. 调用函数而不是将其作为回调传递。

这里解决DOM元素问题:
var weight = parseInt(document.getElementByID("weight").value)
对其他变量使用相同的方法。

看起来您可能正在调用 calcBMI() 而不是将其作为回调 calcBMI 传递
.addEventListener("click", calcBMI, false);

查看 MDN on event listeners

看起来您引用的是 documentobject 而不是 document

var textbox = documentobject.getElementById('Result');

试试这个:
var textbox = document.getElementById('Result');

希望这对您有所帮助!

关于从文件调用 Javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46167767/

相关文章:

javascript - 将 JSON 对象格式化为对象数组

javascript - 如何使用react上传图像并将其保存到数据库

javascript - 在 express 和 react 中用 index.html 响应

javascript - Safari 问题 : Downloaded file name is "Unknown" Javascript

javascript - 在直接声明的 HTML 事件标签中获取事件对象

javascript - 如何改变HTML5中视频的播放速度?

javascript - .data ('kendoComboBox' ) 从事件处理程序调用时返回未定义

javascript - 使用 AJAX 提交表单时遇到问题

javascript - jQuery 使用淡入淡出效果更改正文的背景 URL

javascript - jQuery:基于多个属性的元素选择