前端进阶(第二记)
为什么input无法多次选中同一个文件???
答:这是由于input对象的val值没有发生改变造成的
html部分
<div class="row-panel-content">
<div class="choose-text">
<button id="getFile" @click = "chooseFile">选择文件</button>
//将input框隐藏,因为无法修改样式
<input type="file" class="filePanel" name="up_file" style="display: none">
<span class="fileName" >{{uploadFileName}}</span>
</div>
<p>仅允许导入"xls"或"xlsx"格式文件!</p>
</div>
js部分
// 选择文件
chooseFile : function(el){
var input = el.target.nextElementSibling;
input.click();
var then = this;
input.onchange = function (e) {
var file = e.target.files[0];
vm.uploadFile = file;
console.log(vm.uploadFile);
if(file){
vm.uploadFileName = file.name;
el.target.innerText = "重新选择";
}
//**就是这一句,清空input的value就可以重复上传同一个文件啦,吼吼**
input.value = null;
}
}