未捕获的TypeError:无法读取属性

时间:2013-01-10 19:02:02

标签: javascript html5

我收到了这个错误: Uncaught TypeError: Cannot read property 'd' of undefined

并且它在var d部分。

function sign() {
    var d = document.first.d.value;
    var mon = document.first.mon.value;
    var y = document.first.y.value;
    var curd = new Date(y,mon-1,d);
    var res2 = curd.getMonth();
    var i = 0;
}

我不知道是什么问题。 谁能帮我吗。 如果你需要的话,我可以更详细一点。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

这是一个oldschool DOM 0访问代码,其中元素由name=""引用,例如name="first",不推荐使用。使用document.getElementById代替document.first.d

<input id="d" value="10" />
<input id="mon" value="02" />
<script>
(function() {
var first = document.getElementById('d');
alert(first.value);
})();
</script>

您的代码失败,因为它没有获得document.first的引用,因为它可能不是name=first,但可能是id=first。如果需要,请将这3个语句设为gEBI并设置id,然后设置。