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:
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!