我是一名新手程序员,需要一些帮助来弄清楚如何将本地文本文件上传到我正在构建的网站内的文本区域。我的 HTML/CSS 非常流利,我对 Javascript/JQuery 有一定的了解,而且我只是在学习 PHP。如果您能提供任何帮助,我将不胜感激。我有一个 type="file"和 name="file"的输入,我有一个类为“.textbox”的文本区域,我有一个运行函数“Upload()”的按钮 这是我的 javascript网站。
var localfile = $("input[name=textfile]").val();
function Upload(){
$(".textbox").append(file);
}
提前致谢!
最佳答案
实现 FileReader 的现代浏览器可以做到这一点。要测试您的浏览器,请检查是否定义了 window.FileReader。
这是我几天前写的一些代码来做到这一点。在我的例子中,我只是将一个文件拖到此处引用为 panel.in1 的 HTML 元素上,但您也可以使用(参见下面的引用)。
if (window.FileReader) {
function dragEvent (ev) {
ev.stopPropagation ();
ev.preventDefault ();
if (ev.type == 'drop') {
var reader = new FileReader ();
reader.onloadend = function (ev) { panel.in1.value += this.result; };
reader.readAsText (ev.dataTransfer.files[0]);
}
}
panel.in1.addEventListener ('dragenter', dragEvent, false);
panel.in1.addEventListener ('dragover', dragEvent, false);
panel.in1.addEventListener ('drop', dragEvent, false);
}
它是 reader.onloadend 函数,它获取您在事件处理程序中恢复的文件的文本作为 this.result。
我从 MDN 获得了大部分关于如何执行此操作的机制:https://developer.mozilla.org/en-US/docs/Using_files_from_web_applications
这段代码展示了读取文件的基础知识,文件本身被拖到文本区域,我认为这是一个更好的界面,而不是必须通过选择文件机制,但那些选择文件的效果同样好阅读。
这是我对类似问题的回答:Get text file content using javascript
关于javascript - 如何将本地文本文件上传到文本区域(网页内),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17204090/