Javascript/HTML变量未定义(全局变量)

Javascript/HTML variable is undefined (global var)

本文关键字:全局变量 未定义 变量 HTML Javascript      更新时间:2023-09-26

好的,我似乎不明白为什么这个变量在我的警报框中未定义。我遗漏了什么?

<html>
<script src="xslt.js"></script>
<script>
var file;
var objecturl;
var files;
var filename="filename goes here";
function handleFileSelect(evt) {
    files = evt.target.files; // FileList object
    file = files[0];
    filename = file.name;
}
function submit() {
alert(filename);
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
</script>
Select your XML/CCD File(s):<input type="file" id="files" name="files[]" multiple />
<input id="clickMe" type="button" value="View CCD" onclick="submit();" />
<div id="transformResult"></div>
</html>

试试这个:

<script>
var file;
var objecturl;
var files;
var filename="filename goes here";
function handleFileSelect(evt) {
    files = evt.target.files; // FileList object
    file = files[0];
    filename = file.name;
}
function submit() {
alert(filename);
}
</script>
Select your XML/CCD File(s):<input type="file" id="files" name="files[]" multiple />
<input id="clickMe" type="button" value="View CCD" onclick="submit();" />
<div id="transformResult"></div>
<script>
document.getElementById('files').addEventListener('change', handleFileSelect, false);
</script>

注意,我将addEventListener移动到一个脚本中,该脚本在元素加载到DOM后运行。

在调用getElementById之前必须等待input字段在dom中,因此没有设置filename