J'ai une page web où il y a un bouton qui, lorsqu'on clique, génère un fichier csv (en faisant une conversion depuis json) qui est téléchargé par le navigateur. Il utilise essentiellement la logique de ce jsfiddle. Tout cela fonctionne en chrome, mais dans IE, rien ne se passe.Comment télécharger un fichier par programmation en utilisant JS (Internet Explorer)
var uri = 'data:text/csv;charset=utf-8,' + escape(CSV);
// Now the little tricky part.
// you can use either>> window.open(uri);
// but this will not work in some browsers
// or you will not get the correct file extension
//this trick will generate a temp <a /> tag
var link = document.createElement("a");
link.href = uri;
//set the visibility hidden so it will not effect on your web-layout
link.style = "visibility:hidden";
link.download = fileName + ".csv";
//this part will append the anchor tag and remove it after automatic click
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
Le problème semble être que l'attribut de téléchargement d'une balise d'ancrage n'existe pas dans Internet Explorer. J'ai regardé de nombreux articles et publications, mais je n'ai pas trouvé de solution cohérente que je puisse utiliser dans la page.
Comment le code de jsfiddle peut-il être implémenté dans IE?
Il peut être utile de répertorier la version d'IE que vous testez et l'exception. – Marquis
Désolé, en fait, quelque chose que j'essayais plus tard a renvoyé une exception d'exécution. Le code que j'ai utilisé initialement (qui est similaire au jsfiddle) n'a rien fait quand on a cliqué sur le bouton, mais en chrome, le fichier est téléchargé et vous avez la possibilité de l'ouvrir. C'est dans IE 11. – loremIpsum1771