我的.php(静态网站)文件中的javascript不起作用。我使用其他3个脚本并且它们可以工作,但不是这个。
情况很简单
javascript是......
var myFile = document.getElementById('myFile');
myFile.addEventListener('change', function() {
alert(this.files[0].size);
});
并且PHP文件中的HTML代码是(剥离的)
<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文件尝试更简单的代码看起来像这样,当然不起作用...
<!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");
});
</script>
<input type="text" id="input" />
</td>
</tr>
<table>
</body>
</html>
请帮帮我,我真的不知道这是什么...... 我忘了提及,我尝试了不同的浏览器 - Opera 12.15,最新的FF和Chrome,无论如何都没有用。但它适用于小提琴......感谢您提前提供任何帮助
答案 0 :(得分:9)
将脚本放在正文末尾,就在</body>
结束标记之前。
脚本在放置它们的位置同步加载,因此在之前放入中的任何脚本都不会知道该元素是否存在。
另外,伊戈尔说的是什么。
答案 1 :(得分:2)
您在html中没有包含ID为“myFile”的DOM元素。