当其他工作正常时,document.getElementById返回null

时间:2014-04-11 18:19:32

标签: javascript exception isnull

我在SO和网络上看过很多其他帖子,但是这些帖子涉及在创建元素之前尝试添加事件处理程序。我的情况不同。

我有一个包含以下细分的html文档:

<nav id="main_menu">                
            <ul>                
                <li id="liMapFilter" class="list"><img id="imgFilter" src="images/filter_icon.png">Filter</li>
                <li id="liDiagnostics" class="list"><img id="imgTools" src="images/tools_icon.png">Administration</li>              
            </ul>           
        </nav>

我在页面加载后设置了一些事件处理程序,通过调用:

$(document).ready(function() {
    home.init();
});

home.init()函数中我设置了以下监听器:

var elmMapFilter = document.getElementById('liMapFilter"');
cs_core.addEvent(elmMapFilter, 'click', home.showDialogMapFilter, false);

所有其他侦听器处理程序连接都很好,但是这个特定的一个总是抛出一个空引用。我无法理解这个处理程序何时正常工作:

var elmDiagnostics = document.getElementById('liDiagnostics');
cs_core.addEvent(elmDiagnostics, 'click', core.showDiagnostics, false);

请告知。

1 个答案:

答案 0 :(得分:5)

你有印刷错误。你的身份中有一个迷路的"字符。