无法获得属性' addEventListener'未定义或空引用的

时间:2015-10-14 12:03:51

标签: javascript html

我知道问题的含义,但我不知道如何解决它。此代码位于正文标记之前:

<script>
var fileInput = document.getElementById('#fileToUpload');

    fileInput.addEventListener('change', function() 
    {
        var reader = new FileReader();

        reader.addEventListener('load', function() 
        {
            alert('Contenu du fichier "' + fileInput.files[0].name + '" :\n\n' + reader.result);
        }, false);

        reader.readAsText(fileInput.files[0]);

    }, false);
</script>

其次是:

<body>
(...)
<input class="inputToCover" id="fileToUpload" type="file" multiple />
(...)
</body>

IE10抛出这个错误:无法获取属性&#39; addEventListener&#39;未定义或空引用的行:fileInput.addEventListener('change', function()

修改

其实谢谢你的回答!我修复了它,现在是var fileInput = document.getElementById('fileToUpload');,但同样的错误仍在这里。有什么想法吗?

1 个答案:

答案 0 :(得分:3)

在你真正做到之前,你正试图吃披萨。

在将元素呈现到页面之前,您无法引用该元素。您需要在onload上调用脚本document ready,或将其放在页面上的元素之后。通常人们会将脚本放在关闭正文标记之前。