Der obige Code lädt nur eine neue Seite mit einem Musik-Player. Ich möchte es wie eine Datei herunterladen.Beginnen Sie mit dem Herunterladen der Datei, nachdem der AJAX-Anruf abgeschlossen wurde
3
A
Antwort
3
Sie es über PHP tun könnten, eine PHP-Datei mit den richtigen Header erstellen und als zu dieser Seite zu umleiten, wird es den Browser zwingen, die Datei herunterzuladen.
<?php
header('Content-disposition: attachment; filename=song.mp3');
header('Content-type: audio/mpeg3');
readfile('song.mp3');
?>
0
Das ist Browser abhängig. Wenn Ihr Browser über ein Medien-Plugin verfügt, können Mediendateien direkt im Browser geöffnet werden, anstatt einen Download-Dialog anzubieten.
3
1
Wenn Sie den Download nach dem Ajax-Aufruf Automatisierung aufgeben, Sie können dies tun. Die Browser werden diese Situation auf ihre eigene Weise behandeln.
$.ajax({
type: "POST",
url: "processform.php",
dataType: "json",
data: {name: name, email: email, city: city, country: country, day: day, month: month, year: year}
}).done(function(msg){
if(msg.success == 1){
$("#success_msg").append('<p>'+msg.message+'</p>');
// window.location.href = './music/song.mp3';
$('<a/>', {target:'_blank', href:'./music/song.mp3'}).appendTo($("#success_msg")).html('Click To Download <Filename>');
}
});
Verwandte Themen
- 1. Rückruffunktion, nachdem .each() abgeschlossen wurde?
- 2. Datei herunterladen & Prozent abgeschlossen
- 3. Was passiert, nachdem die Nachrüstungsanforderung abgeschlossen wurde?
- 4. Warum Dienst beenden, nachdem Setup abgeschlossen wurde
- 5. CSV-Datei automatisch herunterladen, nachdem auf den Link geklickt wurde
- 6. Wo ist der Pfadname der Datei, nachdem mmap aufgerufen wurde?
- 7. Größe der Bilddatei vor dem Herunterladen aus dem Internet herunterladen
- 8. .NET - Beginnen Sie mit dem Lesen von DataReader, bevor die Abfrage abgeschlossen ist?
- 9. Ausführen einer Funktion, nachdem jede Schleife abgeschlossen wurde
- 10. IOS: Zurücksetzen der Aktion von UIBarButtonItem, nachdem sie erstellt wurde?
- 11. Herunterladen der neuesten Datei mit Wget/Curl
- 12. Wiederherstellungsstatus, nachdem der Prozess beendet wurde
- 13. Dateigrößenunterschied beim Herunterladen der Datei
- 14. Problem beim Herunterladen der Datei mit PHP
- 15. Manuelles Herunterladen der Datei - PhantomJS mit Selenium
- 16. Herunterladen der PDF-Datei mit OKHTTP
- 17. Wie wird eine CSJS-Funktion aufgerufen, die JQuery verwendet, nachdem der Dojo-Parser abgeschlossen wurde?
- 18. Wie Sie mit dem Testen beginnen (jMock)
- 19. Mime-Typ der Datei herunterladen
- 20. Ausführung nur fortsetzen, nachdem die DOM-Manipulation abgeschlossen wurde
- 21. Warum kann ich eine Datei herunterladen, die mit der Datei htaccess gesichert wurde?
- 22. Code zum Herunterladen der Datei
- 23. Kann ich sagen, dass bash einen Befehl ausführen soll, nachdem der gerade ausgeführte Befehl abgeschlossen wurde?
- 24. Führen Sie Javascript aus, nachdem das Laden der Seite abgeschlossen ist
- 25. Was ist der Punkt, an dem der Thread wieder mit dem Haupt-Thread verbunden wird, nachdem der Thread unterbrochen wurde?
- 26. Die Benachrichtigungsleiste verschwindet, nachdem der Download abgeschlossen ist.
- 27. Benachrichtigungssymbol beim Herunterladen der Datei
- 28. okhttp nicht herunterladen der Datei
- 29. Schließen Sie die Browser-Popup-Seite nach dem Herunterladen der Datei
- 30. Funktion ausführen, nachdem der Ajax-Aufruf abgeschlossen ist
http_send_file von pecl_http ist wirklich nützlich - aktiviert Bereichsanforderungen und http_match_etag für automatische 304 (nicht geändert) Antworten. http://php.net/manual/en/function.http-send-file.php und http://php.net/manual/en/function.http-match-etag.php – Olli