【JavaScript】IEの場合のdownload属性の代替

【JavaScript】IEの場合のdownload属性の代替

IEの場合、aタグのdownload属性が効かず、ファイルのダウンロードできなかったため、その代替案についての覚え書きです(Drupalネタではないです)。

download属性

Excelファイルをダウンロードできるように、以下のようなリンクを作成し、ファイルがダウンロードできることを確認していたのですが、


<a download="Test.xlsx" href="/download/Test.xlsx">Test.xlsx</a>

IEの場合、これではダウンロードできないとのことで、その対応結果を以下に記します。

JavaScriptでの対応

ググったところ、JavaScriptで画像をダウンロードしたいの記事によると、JavaScriptを使えば、IEでもリンクからファイルのダウンロードができるとのこと。

上記の記事を参考にして、以下のJavaScriptを記述。


function downloadFile(uri,fileName,id) {

    // IEはdownload属性が効かないので分岐
    if (window.navigator.msSaveOrOpenBlob) {
        let xhr = new XMLHttpRequest();
        xhr.open('GET', uri);
        xhr.responseType = 'blob';
        xhr.onloadend = function() {
            if (xhr.status !== 200) {
                return false;
            }
            window.navigator.msSaveOrOpenBlob(xhr.response, fileName);
        };
        xhr.send();
    } else {
        let link = document.getElementById(id);
        link.href = uri;
        link.download = fileName;
    }
}


HTMLは、以下のように記述を変更し、IEでもファイルをダウンロードできるようになりました。


<a id="download1" href="javascript:void(0);" onclick="downloadFile('/download/Test.xlsx','Test.xlsx','download1');">Test.xlsx</a>

カテゴリー

コメント

dark web search engine <a href="https://tor-marketplace24.link/ ">dark web site </a>
名前
Danielred
dark web search engine <a href="https://tor-marketplace24.shop/ ">darknet drug store </a>
名前
Teddred
darknet search engine <a href="https://tordarknetmarket24.link/ ">drug markets dark web </a>
名前
Georgelouse
darknet market lists <a href="https://darkweb-market.link/ ">deep web markets </a>
名前
Edgarlow
darknet search engine <a href="https://thetormarket.shop/ ">darkmarket </a>
名前
JamesStaiz
darknet drugs <a href="https://tor-markets-darkweb.shop/ ">tor markets links </a>
名前
Davidjoisp
deep web search <a href="https://tormarketwebxx.com/ ">darkmarkets </a>
名前
DonaldDic
deep web markets <a href="https://tordarknetmarket2022.link/ ">drug markets onion </a>
名前
Julianacecy
blackweb official website <a href="https://kingdom-market.link/ ">deep web drug url </a>
名前
RichardDek
dark market link <a href="https://dark-markets.link/ ">tor market links </a>
名前
Brandendet
blackweb <a href="https://tordarkwebmarketlinks.shop/ ">darknet drug links </a>
名前
TimmyMeexy
how to access dark web <a href="https://torwebdarknet.com/ ">dark web websites </a>
名前
Randykew
tor markets links <a href="https://thedarkwebmarket.shop/ ">bitcoin dark web </a>
名前
Hanstulge
darkmarket list <a href="https://tor-darkmarkets-online.com/ ">dark web drug marketplace </a>
名前
FrankHuluh
how to access dark web <a href="https://tor-darkmarket-online.shop/ ">darknet websites </a>
名前
CharlesNuh
drug markets onion <a href="https://tordarkweblist.shop/ ">dark market list </a>
名前
BrandonWaype
dark market 2023 <a href="https://hydra-darknets.link/ ">dark web link </a>
名前
RobertKix
blackweb <a href="https://tormarketwebxx.link/ ">dark web search engine </a>
名前
JasonGribe
drug markets dark web <a href="https://privatedarkwebmarket.shop/ ">darkmarket list </a>
名前
Jancal
dark web market links <a href="https://tordarkwebmarket.shop/ ">dark websites </a>
名前
Richardvak
deep web search <a href="https://tor-markets-darknet.shop/ ">deep web drug markets </a>
名前
Sirket
deep web drug markets <a href="https://torwebmarketplace.shop/ ">dark market 2023 </a>
名前
Dannyquord
darknet drug links <a href="https://mmonopolymarket.link/ ">darkmarket </a>
名前
HectorDer
tor market links <a href="https://tordarkmarketurl.link/ ">dark web sites links </a>
名前
CraigAgeni
deep web drug links <a href="https://dark0de-markets.link/ ">darkmarket list </a>
名前
MichaelRaf
darknet site <a href="https://tor-darkmarkets-online.shop/ ">drug markets dark web </a>
名前
JamesHub
drug markets onion <a href="https://tor-market-darkweb.shop/ ">dark internet </a>
名前
Danired
darkmarket url <a href="https://darkweb-markets.link/ ">tor markets 2023 </a>
名前
JackieDuart
darknet search engine <a href="https://tordarknetmarket2022.shop/ ">darknet links </a>
名前
Randytiz
dark web site <a href="https://tordarkwebslist.link/ ">darknet drug market </a>
名前
Michaeltus
blackweb official website <a href="https://privatedarkwebmarket.com/ ">darknet site </a>
名前
WilliamRip
darknet seiten <a href="https://torwebdarknet.shop/ ">darknet drug store </a>
名前
ZacharyBop
dark market list <a href="https://tordarkwebmarket.link/ ">darknet sites </a>
名前
Charlescob
how to get on dark web <a href="https://privatedarknetmarkets.link/ ">deep web drug store </a>
名前
Davidinodo
dark market url <a href="https://alldarkmarkets.link/ ">tor dark web </a>
名前
HaroldHot
darknet search engine <a href="https://tor-markets2023.shop/ ">tor market </a>
名前
WilliamNaw
darknet drug links <a href="https://tor-market-darkweb.com/ ">dark web websites </a>
名前
Wendellpog
tor markets links <a href="https://tordarknetmarkets2023.link/ ">darknet websites </a>
名前
Robertfup
darknet seiten <a href="https://tordarkmarketurl.com/ ">best darknet markets </a>
名前
Ronaldevica
darkmarket <a href="https://privatedarkwebmarkets.shop/ ">darknet markets 2023 </a>
名前
Crisscunc
deep web drug links <a href="https://thedarkwebmarkest.shop/ ">darknet drugs </a>
名前
SmittMef
darkmarket 2023 <a href="https://tordarknetmarketlist.link/ ">darknet seiten </a>
名前
Josephanarm
deep dark web <a href="https://tordarkmarketweb.shop/ ">dark markets </a>
名前
Geraldhopay
dark web markets <a href="https://thetormarket.com/ ">darknet site </a>
名前
Ralphzet
darknet drugs <a href="https://thedarknetmarket.shop/ ">dark internet </a>
名前
ADElugh
darknet drug links <a href="https://tordarkwebmarketlinks.com/ ">tor market url </a>
名前
DavidDes
the dark internet <a href="https://tordarkwebmarketlink.link/ ">dark market 2022 </a>
名前
Patrickhuple
dark market onion <a href="https://tor-market-darknet.link/ ">darknet sites </a>
名前
Granttromo
deep web drug url <a href="https://darknet-markets.link/ ">deep web sites </a>
名前
Michaelloush
how to access dark web <a href="https://tordarknetmarkets2023.com/ ">dark web link </a>
名前
JamesseM

コメントを追加

CAPTCHA
この質問はあなたが人間の訪問者であるかどうかをテストし、自動化されたスパム送信を防ぐためのものです。
画像CAPTCHA
画像内に表示されている文字列を入力してください。