[英]file content in textarea using Javascript
我想使用javascript在textarea標簽中顯示本地文件的內容。 這樣做,我發現以下解決方法:
<textarea id="queryContent"></textarea>
<input type="file" multiple id="queryInput">
<script>
var input = document.getElementById("queryInput");
input.addEventListener("change", function () {
Array.prototype.forEach.call(input.files, function (file) {
var reader = new FileReader();
reader.addEventListener("load", function () {
console.log("File", file.name, "starts with",
reader.result.slice(0,20));
});
reader.readAsText(file);
document.getElementById("queryContent").innerText = reader.result.toString();
});
});
</script>
問題是我還不是Java專業人士。 我總是得到一個reader.result為null錯誤,我不知道為什么。 我感謝您的幫助!
這行:
document.getElementById("queryContent").innerText = reader.result.toString();
應該在回調內部發生。 當腳本運行此行時, FileReader
尚未完成工作,因此reader.result
很可能為null
。
請嘗試以下代碼:
var input = document.getElementById("queryInput");
input.addEventListener("change", function () {
Array.prototype.forEach.call(input.files, function (file) {
var reader = new FileReader();
reader.addEventListener("load", function () {
console.log("File", file.name, "starts with", reader.result.slice(0,20));
document.getElementById("queryContent").innerText = reader.result.toString();
});
reader.readAsText(file);
});
});
聚苯乙烯
我建議從輸入元素中刪除multiple
,除非有必要,以避免不必要的復雜性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.