Javascript 如何知道文件下载的进度
我想使用表单&iframe下载excel。Excel已成功下载。唯一的问题是我无法获得下载的进度。我尝试了iframe的onload事件,但是当下载成功时,onload事件不会触发。那么我如何知道进度,或者如何触发onload事件呢Javascript 如何知道文件下载的进度,javascript,iframe,Javascript,Iframe,我想使用表单&iframe下载excel。Excel已成功下载。唯一的问题是我无法获得下载的进度。我尝试了iframe的onload事件,但是当下载成功时,onload事件不会触发。那么我如何知道进度,或者如何触发onload事件呢 <span @click="onDownload">download</span> <iframe id="id_iframe" name="nm_iframe" style=
<span @click="onDownload">download</span>
<iframe id="id_iframe" name="nm_iframe" style="display:none;" @load="onLoad_iframe"></iframe>
<script>
onLoadframe(){
let iframe_obj = document.getElementById("id_iframe");
let pre = iframe_obj.contentWindow.document.getElementsByTagName("pre");
let res = {};
if(pre.length>0){
res = JSON.parse(pre[0].innerText);
if(res.code!='0'){
utils.msg.error(res.message)
}
}
},
onDownload(){
var form = document.createElement('form');
form.setAttribute('target', 'nm_iframe');
form.setAttribute('method', 'get');
form.setAttribute('action', url);
document.body.appendChild(form);
for (var obj in params) {
if (params.hasOwnProperty(obj)) {
var input = document.createElement('input');
input.tpye = 'hidden';
input.name = obj;
input.value = params[obj];
form.appendChild(input);
}
}
form.submit();
document.body.removeChild(form);
},
</script>
下载
onLoadframe(){
让iframe_obj=document.getElementById(“id_iframe”);
let pre=iframe_obj.contentWindow.document.getElementsByTagName(“pre”);
设res={};
如果(前长度>0){
res=JSON.parse(pre[0].innerText);
如果(res.code!=“0”){
utils.msg.error(res.message)
}
}
},
onDownload(){
var form=document.createElement('form');
form.setAttribute('target','nm_iframe');
form.setAttribute('method','get');
form.setAttribute('action',url);
文件.正文.附件(表格);
for(参数中的var obj){
if(参数hasOwnProperty(obj)){
var input=document.createElement('input');
input.tpye='hidden';
input.name=obj;
input.value=参数[obj];
表单。追加子项(输入);
}
}
表单提交();
文件.body.removeChild(表格);
},