Heim >Web-Frontend >js-Tutorial >Kann ich jQuery AJAX zum Hochladen von Dateien verwenden und wie?

Kann ich jQuery AJAX zum Hochladen von Dateien verwenden und wie?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-25 04:53:14719Durchsuche

Can I Use jQuery AJAX to Upload Files, and How?

Kann ich jQuery Ajax verwenden, um Dateien per POST hochzuladen?

Das Hochladen von Dateien über AJAX ist mit dem bereitgestellten jQuery-Code nicht möglich. Wie aus der Antwort hervorgeht, können Sie Dateien nicht direkt über AJAX hochladen.

Mit der Einführung von XHR2 sind jedoch Datei-Uploads über AJAX mithilfe des FormData-Objekts möglich. Damit dies funktioniert, müssen Sie einen Browser verwenden, der FormData unterstützt, wie zum Beispiel:

  • IE 10
  • Firefox 4.0
  • Chrome 7
  • Safari 5
  • Oper 12

So können Sie Ihren Code ändern, um FormData für Datei-Uploads zu verwenden:

var formData = new FormData();
formData.append('file', fileObject); // Replace 'fileObject' with your file input element

$.ajax({
    type: "POST",
    timeout: 50000,
    url: url,
    data: formData, // Use formData instead of dataString
    processData: false, // Prevents jQuery from converting formData to a string
    contentType: false, // Tells jQuery not to set any content type header
    success: function (data) {
        alert('success');
        return false;
    }
});

In diesem geänderten Code erstellen wir ein FormData-Objekt, hängen die Datei daran an und Setzen Sie „processData“ und „contentType“ auf „false“, damit jQuery die Daten korrekt verarbeiten kann.

Das obige ist der detaillierte Inhalt vonKann ich jQuery AJAX zum Hochladen von Dateien verwenden und wie?. 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