读取用户在 Javascript 中选择的文件?
Read a file selected by user in Javascript?
我环顾四周,仍然没有找到一个令人满意的简单答案来解决这个(被认为很受欢迎的)问题。解决方案要么直接将文件发送到后端,要么过于复杂。
我有这个:
$("#"+id+" input").change(function() {
file = $(this).prop('files')[0]
var reader = new FileReader();
readed = reader.readAsBinaryString(file)
console.log(readed)
});
然而这给了我 undefined
。有没有一种简单的方法可以只读取用户选择的文件并读取内容?
readAsBinaryString 是一个异步函数。它没有 return 数据。
您需要创建一个事件处理程序,在读取数据时触发该事件处理程序,然后从 FileReader 对象读取它。
var file = $(this).prop('files')[0]
var reader = new FileReader();
reader.onloadend = function () {
console.log(reader.result);
}
reader.readAsBinaryString(file)
我环顾四周,仍然没有找到一个令人满意的简单答案来解决这个(被认为很受欢迎的)问题。解决方案要么直接将文件发送到后端,要么过于复杂。
我有这个:
$("#"+id+" input").change(function() {
file = $(this).prop('files')[0]
var reader = new FileReader();
readed = reader.readAsBinaryString(file)
console.log(readed)
});
然而这给了我 undefined
。有没有一种简单的方法可以只读取用户选择的文件并读取内容?
readAsBinaryString 是一个异步函数。它没有 return 数据。
您需要创建一个事件处理程序,在读取数据时触发该事件处理程序,然后从 FileReader 对象读取它。
var file = $(this).prop('files')[0]
var reader = new FileReader();
reader.onloadend = function () {
console.log(reader.result);
}
reader.readAsBinaryString(file)