2016-05-22 23 views
0

Ich möchte eine Datei herunterladen mit Hilfe von Javascript triggern nurDatei herunterladen mit Javascript

Ich weiß, wie es mit HTML zu tun, aber ich brauche, um den Download speziell mit Javascript auszulösen, auf eine Schaltfläche klicken.

Der Grund, warum ich es nicht mit HTML mache, ist, weil ich später eine Variable als Dateiname verwenden möchte.

Ich habe dieses

$("#button").click(function(){ 
    window.location = 'files/aaa.pdf'; 
}); 

verwendet, aber es öffnet sich nur das pdf auf demselben Fenster statt Aufforderung an den Benutzer, um sie herunterzuladen.

Ich habe auch schon versucht, diese mit:

<iframe id="my_iframe" style="display:none;"></iframe> 
<script> 
function Download(url) { 
    document.getElementById('my_iframe').src = 'files/aa.pdf'; 
}; 
</script> 

Aber es nicht um Ergebnisse zu erzielen.

+0

Ich denke, das ist, was Sie wollen [Download-Datei mit Javascript/jQuery]. [Download-Datei mit Javascript/jQuery]: http: //stackoverflow.com/questions/3749231/download-file-using-javascript-jquery –

+0

Ich bin ein wenig verwirrt, wo bin ich suppsoed den Pfad zu der Datei (Dateien/aaa.pdf)? An der URL Teil? Es bricht meinen Code – G90DD

+0

Vielleicht würde diese Antwort http://stackoverflow.com/a/28946907/4358405 basierend auf 'download = true' Attribut würde dazu beitragen, dass vollständig in JS, ohne Server Seite Änderungen. Ich habe diese Technik allerdings nicht ausprobiert. – TMG

Antwort

-1

Sie sollten den MIME-Typ von PDF auf application/octet-stream in Ihrem Webserver einstellen. Dadurch lädt der Browser das PDF herunter, anstatt es anzuzeigen.

+0

Ich denke, der fehlende HTTP-Header ist eher 'Content-Disposition: Anhang; filename = "" 'Die Einstellung hängt von dem Webserver ab, den OP verwendet – TMG