我正在尝试将输入类型=“文件”标记读入javascript字符串。我知道这应该很简单,但我根本无法让我的代码工作。文件是普通的.html。这就是我所拥有的
<h3>Select location of html file.</h3>
<form onSubmit="submitButtonPressed()">
<input type="file" id="classList" />
<input type="submit" />
</form>
<script>
var reader = new FileReader();
var htmlFile = document.getElementById("classList").files[0]; //read the file selected with the <input> tag
reader.readAsText(htmlFile);
var htmlText = reader.result; //and create a string with the contents
function submitButtonPressed() {
var lengthOfText = htmlText.length;
alert("It is " + lengthOfText + " characters long");
}
</script>
我只是想创建一个包含输入标记选择的.html文件内容的字符串。我无法弄清楚为什么htmlText不包含.html文件的内容,有人可以解释我做错了吗?
答案 0 :(得分:0)
这是对你的正确答案:
HTML5 File API: How to see the result of readAsText()
reader.onload = function(e) {
// e.target.result should contain the text
};
reader.readAsText(file);
所以我猜你必须检查文件是否加载时按下按钮,可能还在进行中,或者遇到错误