Javascript "variable is not defined"

标签 javascript html

我正在编写一个简单的 javascript 函数,它可以从三个文本区域中获取信息。非常基本,但出于某种原因,javascript 告诉我我的变量未定义,我很困惑为什么。

html如下:

<input type = "text" id = "month" name = "month"/>
    <input type = "text" id = "day" name = "day"/>
    <input type = "text" id = "year" name = "year"/>
    <input type = "button" id = "submit" value = "Go!" onClick = "calculate(month, day, year)"/>

javascript 很简单

function calculate(month, day, year){
var setMonth = document.getElementById(month).value;
var setDay = document.getElementById(day).value;
var setYear = document.getElementById(year).value;}

当我运行它并单击我的按钮时,它在 Firebug 中显示“月份未定义”。所以我有点困惑,因为...它们已定义!

帮助?谢谢!

最佳答案

monthdayyear 被解释为不存在的变量名。你想传递字符串:

onClick = "calculate('month', 'day', 'year')"/>

关于Javascript "variable is not defined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5504515/

相关文章:

javascript - 如何在 IE 中单击后退按钮时使表单值相同

javascript - 如何在页面加载时显示可编辑的 jqgrid 列

html - 如何设置内表的高度

javascript - 如何使用jQuery的drop事件上传从桌面拖拽的文件?

javascript - 有漏洞的高效 HTML Div

javascript - 如何在Panel内部调用Ext.Define类?

javascript - Angular-Formly 自定义类型 Controller 部署失败

javascript - 如何传递字符串或函数名称列表作为 Javascript 中的回调进行处理

javascript - AngularJS 中保留键/值关联的对象按字母顺序排列选项

html - 仅输入数字并添加最大数量的字母