在用javascript上传之前,是否可以更改文件的内容?我可以阅读内容,但似乎无法更改。
f = document.getElementById('input').files[0];
var reader = new FileReader();
reader.onload = function(e){
console.log(e.target)
e.target.result = "new content"
console.log(e.target);
};
reader.readAsDataURL(f);
答案 0 :(得分:0)
您不能重写文件输入的值。
您可以获取文件的内容并通过Ajax发送。
reader.onload = function(e){
const data = new FormData();
const url = this.result;
const blob = convertUrlToBlob(url);
data.append("file_input", blob, "filename.ext");
const xhr = new XMLHttpRequest();
xhr.open('POST', '/example/url');
xhr.send(data);
};
我不会详细介绍如何编写convertUrlToBlob
函数,this question涵盖了该函数。