Download pdf-Datei aus einem string mit Hilfe von Jquery
Alle,
Habe ich eine PHP5-Anwendung geschrieben, die mit dem Zend Framework und MVC. Auf meiner Homepage möchte ich integrieren die Funktionalität zum herunterladen einer dynamisch generierten pdf-Datei. Die Art und Weise dies geschehen ist:
- Benutzer klickt auf "Datei herunterladen" - link.
- Auf Klicken, wird ein AJAX-Aufruf erfolgt, um eine PHP-controller, die die form von Daten, generiert das pdf und gibt es als string zurück.
- Meine javascript-Funktion hat jetzt die pdf-Datei string.
- Wie kann ich den Benutzer anzeigen, der ein "Öffnen/Speichern" - dialog, um den download der pdf-Datei in javascript?
Ich habe den folgenden code:
<script type="text/Javascript">
$('#dlcontent').click(function(e) {
$.ajax({
type: 'POST',
url: "/downloads/dlpolicies",
data: $("#frmMyContent").serialize(),
cache: false,
dataType: "html",
success: function(html_input){
alert(html_input); //This has the pdf file in a string.
//ToDo: Open/Save pdf file dialog using this string..
}
});
});
</script>
Dank
InformationsquelleAutor Jake | 2010-07-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde versuchen, es einfach halten. Nur füllen Sie das Formular mit einem
target="_blank"
und dann PHP erzwingen Sie die Datei herunterladen.HTML-CODE
Dann auf Ihrem server-Seite, die Sie benötigen, um PHP mitzuteilen, senden Sie die Antwort als ein "download".
PHP-Code
Habe diese hier aus:
Zend Framework, wie um Header zu setzen
Der content-type sollte "application/pdf", wie es standardisiert wurde schon vor einer ganzen Weile.
danke! aktualisiert.
InformationsquelleAutor jessegavin
Der einfachste Weg, es zu tun ist, öffnen Sie ein neues Fenster mit der URL zur pdf-Datei string.
InformationsquelleAutor Teja Kantamneni
Fügen Sie ein element in Ihrer Seite, wo Sie wollen den link zu gehen. Es kann ein span oder ein div-Element oder eine Zelle in einer Tabelle oder was auch immer Sie wollen. Geben Sie eine eindeutige ID. Dann benutze jQuery um die html-Elements. Ich beziehe mich auf es als
somepageelement
hier.Ah okay, sorry für das Missverständnis. In diesem Fall bin ich nicht sicher, warum Sie benötigen, um Ajax zu tun. Ich würde die form haben, die Beiträge auf eine Seite, die generiert die pdf-Datei und geben Sie die
target="_new"
auf das Formular, so dass es öffnet sich in einem neuen Fenster. Wenn Sie möchten, können Sie es so machen, dass das klicken auf#dlcontent
das Formular absendet.InformationsquelleAutor theycallmemorty