未捕获的TypeError:无法读取null的属性'value',需要一些方向

时间:2012-12-12 18:15:21

标签: javascript jquery

我一直试图在我的开发者工具中找出这个特殊问题,但到目前为止我没有运气。我的一个js文件出现错误

Uncaught TypeError: Cannot read property 'value' of null 

以下错误是指下面的dt_version的第一个变量。特别的是如果我注释掉第一行代码。我在offload1和offload2的以下变量上得到了相同的错误。变量是我试图传递的数字。当页面加载时,我在我的身体上运行此功能...... onload=updatetotal();

    function updatetotal() {
    var dt_version = document.getElementById("dt_version").value-0;
    var offload1 = document.getElementById("capacity_offload1").value-0;
    var offload2 = document.getElementById("capacity_offload2").value-0;
    var offload3 = document.getElementById("capacity_offload3").value-0;
    }

如果运行if语句查找document.getElementByID("dt_version"); ...它默认为false ...因为它在上一页中没有被转移,我可以看到它的输入正常,其中包含值。我在这里想念的是什么?

2 个答案:

答案 0 :(得分:1)

此错误表示标识dt_version不存在。检查你的HTML以确保它在那里:

var dt =  document.getElementById("dt_version");
if (dt){
   // do your stuff
}else {
    console.log("dt does not exist")
}

答案 1 :(得分:0)

此错误的另一个原因可能是 - 当您在页面加载时调用javascript函数时,您的控件可能尚未完全呈现给页面。一个简单的解决方案就是将控件移动到页面的开头。如果它不起作用那么一个可靠的解决方案是,在jquery $(document).ready()中调用该函数。