无法读取属性' addEventListener' null错误

时间:2014-10-04 01:13:52

标签: javascript

我的代码一直出错。

我试图检查按钮是否在页面上,如果是这样的话。加载时该按钮不在页面上,但是在提交后替换表单的外部页面上。然后谢谢你html页面通过ajax加载。

var reloadButton = document.getElementById('reloadPage');

if (reloadButton.length > 0) {

    function reloadPage() {

        location.reload();

    }

    if (reloadButton.addEventListener) {

        reloadButton.addEventListener('click', reloadPage, false);

    } else {

        reloadButton.attachEvent('onclick', reloadPage);

    }

} 

我理解如果元素不存在则会出现错误,但这就是我创建if语句的原因。我应该以另一种方式检查元素吗?

1 个答案:

答案 0 :(得分:0)

reloadButton.length正试图调用可能存在或不存在的属性。如果它不可用,尝试访问该属性会导致错误。你可以这样做:

if (reloadButton)