Heim >Web-Frontend >js-Tutorial >Wie kann ich mit AJAX einen Dateidownload per Knopfdruck auslösen?

Wie kann ich mit AJAX einen Dateidownload per Knopfdruck auslösen?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-31 07:34:10842Durchsuche

How Can I Trigger a File Download with a Button Click Using AJAX?

Herunterladen von Dateien mithilfe von AJAX-Anfragen

In diesem Artikel gehen wir auf eine häufig gestellte Frage ein, die bei der Verwendung von AJAX-Anfragen auftritt: „Wie kann ich beim Klicken auf eine Schaltfläche einen Dateidownload starten?“ ?"

Zunächst versucht der bereitgestellte Code, mithilfe einer AJAX-Anfrage an „download.php“ einen Dateidownload auszulösen. Dieser Ansatz greift jedoch zu kurz, da AJAX-Anfragen Downloads nicht direkt initiieren können.

Stattdessen gibt es zwei alternative Lösungen:

  1. Verwendung einer Erfolgsfunktion:
    Bei dieser Methode wird eine AJAX-Anfrage gestellt und nach erfolgreichem Abschluss wird der Browser zu „download.php“ umgeleitet, um die Anfrage zu stellen herunterladen.

    $.ajax({
        url: 'download.php',
        type: 'POST',
        success: function() {
            window.location = 'download.php';
        }
    });
  2. Verwendung von window.location (empfohlen):
    Dies ist der einfachste Ansatz und beinhaltet die vollständige Umgehung der AJAX-Anfrage durch direkte Navigation zur Download-URL.

    window.location = 'download.php';

Es ist erwähnenswert, dass Browser Unterstützen Sie jetzt das Download-Attribut, das das Herunterladen von Dateien vereinfacht und die Notwendigkeit einer AJAX- oder Fensternavigation überflüssig macht. Die Kompatibilität kann jedoch je nach Browser unterschiedlich sein.

Das obige ist der detaillierte Inhalt vonWie kann ich mit AJAX einen Dateidownload per Knopfdruck auslösen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn