Ich möchte eine Datei asynchron mit jQuery hochladen.
$(document).ready(function () {
$("#uploadbutton").click(function () {
var filename = $("#file").val();
$.ajax({
type: "POST",
url: "addFile.do",
enctype: 'multipart/form-data',
data: {
file: filename
},
success: function () {
alert("Daten hochgeladen: ");
}
});
});
});
Datei
Statt die Datei hochzuladen, erhalte ich nur den Dateinamen. Was kann ich tun, um dieses Problem zu beheben?
0 Stimmen
Es gibt verschiedene fertige Plugins zum Hochladen von Dateien für jQuery. Das Durchführen solcher Upload-Hacks ist keine angenehme Erfahrung, daher verwenden die Leute lieber fertige Lösungen. Hier sind einige: - JQuery File Uploader - Mehrere Datei-Upload-Plugin - Mini Mehrfachdatei-Upload - jQuery-Datei-Upload Sie können nach weiteren Projekten auf NPM (unter Verwendung des Schlüsselworts "jquery-plugin") oder auf Github suchen.
78 Stimmen
Du erhältst nur den Dateinamen, weil deine Variable Dateiname den Wert von $('#file') erhält, nicht die Datei, die im Eingabefeld liegt
0 Stimmen
Ich bin auf einige wirklich leistungsstarke jQuery-basierte Datei-Upload-Bibliotheken gestoßen. Schau sie dir an: 1. Plupload - Dokumentation: plupload.com/docs 2. jQuery File Upload - Dokumentation: github.com/blueimp/jQuery-File-Upload 3. FineUploader - Dokumentation: docs.fineuploader.com
22 Stimmen
Hier ist einer: http://blueimp.github.io/jQuery-File-Upload/ - HTML5 Ajax-Upload - Eleganter Ausweichmodus auf iFrames für nicht unterstützte Browser - Mehrfachdatei-Async-Upload Wir haben es verwendet und es funktioniert großartig. (Hier finden Sie die Dokumentation)
3 Stimmen
Überprüfen Sie auch dies: stackoverflow.com/questions/6974684/…, hier wird erklärt, wie man es über jQuery erreichen kann.
2 Stimmen
@Jimmy Wie würde er die Datei erhalten, die im Eingabefeld liegt?
0 Stimmen
@Sergio haben dir keine der 34 Antworten geholfen? Wenn ja, dann schätze es bitte und markiere es als akzeptiert.