在执行任何操作之前,是否可以预览在输入字段中选择的文件?
前任。我会上传一个文本文件,所以我会选择它,然后在我点击上传按钮之前,我想在表格或类似的东西中预览文本文件。
正如@RichardTheobald所提到的,PHP不可能在上传文件之前预览文件,但使用JavaScript是这样。
要在使用JavaScript上传文本文件之前读取该文件,您需要使用FileReader
对象。您将能够从<input type="file">
元素中获得文件列表,并将每个文件弹出到FileReader
中。HTML5Rocks有一篇关于阅读本地文件的好文章,我在一篇JSFiddle中对此问题进行了调整。
input.addEventListener("change", function(e) {
var file = e.target.files[0];
// Only render plain text files
if (!file.type === "text/plain")
return;
var reader = new FileReader();
// Once the FileReader loads, pop the result into an output element
reader.onload = function(event) {
document.getElementById("output").innerText = event.target.result;
};
reader.readAsText(file);
});