【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>

カテゴリー

コメント

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

コメントを追加

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