js 下载Excel文件

第一种 通用(包括跨域)

function downloadFile(url,fileName) {
                fileName = fileName +  '.xlsx';
                var x = new XMLHttpRequest();
                x.open("GET", url, true);
                x.responseType = 'blob';
                x.οnlοad=function(e) {
                    var url = window.URL.createObjectURL(x.response)
                    var a = document.createElement('a');
                    a.href = url
                    a.download = fileName;
                    a.click()
                }
                x.send();
            }

第二种 通用(包括跨域)(个别qq浏览器不会下载,会将文件直接打开,在显示在下载文件)

利用隐藏form表单下载

function downloadFile(url) {
                 if(url){
                     var $form = $('

');
                     $form.attr('action', url);
                     $form.appendTo($('#pageBox'));
                     $form.submit();
                     $form.remove();
                 }
            }

第三种 直接使用a标签download属性(不支持跨域)(个别qq浏览版本点击无反应)

希望大家一起讨论更多方法

你可能感兴趣的:(js 下载Excel文件)