关于html:非常简单的javascript根本不起作用

Very simple javascript doesn't work at all

本问题已经有最佳答案,请猛点这里访问。

我在.php(静态网站)文件中的javascript不起作用。我在那里使用其他3个脚本并且它们可以工作,但不是这个。

情况很简单

javascript是......

1
2
3
4
5
6
var myFile = document.getElementById('myFile');

myFile.addEventListener('change', function() {

  alert(this.files[0].size);
});

并且(剥离)PHP文件中的HTML代码

1
2
3
4
5
6
7
8
<form onsubmit="return anotherfunction();" action="sendForm.php" enctype="multipart/form-data" method="post">    
  <table>
    <tr>
        <td>Attach an image:</td>
        <td> <input type="file" name="priloha[]" accept="image/*" /></td>
    </tr>
  </table>
</form>

并且javascript什么都不做,它就像它不存在一样。我尝试在标题中,标题下方,正文中,输入的TD中使用JS ...我也尝试在外部.js文件中使用它,没有,根本不起作用。我尝试将"更改"更改为"单击",但两者都不起作用。我整天试着这样做,我无法弄清楚出了什么问题。

所以我试着做更简单的代码来检查什么是错的,它似乎是"改变"或"改变" - JS的第二行不起作用。

我也尝试过指定HTML5 doctype,不做任何事情。

我的额外.html文件尝试更简单的代码看起来像这样,当然不起作用...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
    <head>      
  </head>
  <body>
    <table>
        <tr>
            <td>Input field for click popup:</td>
            <td>
                <script type="text/javascript">
                var input = document.getElementById('input');
                input.addEventListener('click', function() {
                alert("Hello");
                });
               
            <input type="text" id="input" />

            </td>
        </tr>
    <table>
    </body>  
</html>

请帮帮我,我真的不知道这是什么......
我忘了提及,我尝试了不同的浏览器 - Opera 12.15,最新的FF和Chrome,无论如何都没有用。但它适用于小提琴...感谢您提前提供任何帮助


将脚本放在正文末尾,就在结束标记之前。

脚本在它们放置的位置同步加载,因此在相关元素之前放入的任何脚本都不会知道元素的存在。

而且,伊戈尔说的是什么。


您在html中没有包含id为"myFile"的DOM元素。