我们都知道input中file的name的属性是只读的,要修改名称,需要把file的name属性设置为可写,具体实现如下:
<input type="file" id="files" readonly="readonly" onchange="fileUpload()" />
function fileUpload(){
let $files = $("files");
if(files.length > 0){
let form = new FormData();
let names = files[0].name.split(".");
Object.defineProperty(files[0],'name',{
writable:true,//设置属性为可写
})
files[0].name = "指定文件名." + names[names.length-1];
form.append('file', files[0],files[0].name);
... //上传方法
}
}