2009-11-06 7 views
14

Ich bin neu in JQuery AJAX. Ich möchte einen Datei-Upload mit einer jquery implementieren. Wird es möglich sein, mit JQuery, AJAX ein Fileupload durchzuführen und es an Servlet zu senden, das Apachedatei Commons verwenden kann, um die Datei hochzuladen. Kann mir bitte jemand weiterhelfen?Datei-Upload über AJAX innerhalb von JQuery

Danke, Deepthi.

Antwort

3

Versuchen Uploadify

+1

Ja +1, ich benutze es es schön ist ... das ist alles. – marcgg

+7

Uplodify benötigt einen Flash, der für einige Websites möglicherweise nicht geeignet ist. – niaher

+2

funktioniert auch in html5 – happy

0

Dies ist kein jQuery Lösung ist aber einen Blick auf http://www.swfupload.org nehmen. Ich habe diese Komponente in der Vergangenheit verwendet, um die Ajax/Flickr-ähnliche Upload-Schnittstelle zu geben. Funktioniert hervorragend und lässt sich relativ einfach in Ihre Website integrieren. Es gibt eine Menge Demos bei http://demo.swfupload.org auch.

12

Ajax im herkömmlichen Sinne ist XMLHttpRequest, mit dem Sie keine lokalen Dateien an einen Server kodieren und senden können.

Die gemeinsamen Wege der durch „Ajax“ bedeutet das Hochladen zu tun, ist entweder eine Flash SWF verwenden das Hochladen auf der gleichen Seite zu behandeln, oder ein Formular zu verwenden, das ein Ziel von einer unsichtbaren 1x1 iframe hat. Sie haben Javascript aktiviert, um ein Upload-Spinner anzuzeigen oder was auch immer. Nachdem die Datei hochgeladen wird, machen den Server zu dem iframe einige Javascript zurückkehren wie

<script type="text/javascript"> 
top.MyProject.doneUploading(); 
</script> 

top können Sie Javascript in der regulären Seite aufzurufen. Damit dies jedoch funktioniert, müssen Sie sicherstellen, dass der Iframe an dieselbe Domäne gesendet wurde, an der sich das oberste Dokument befindet.

+0

Aus diesem Grund sehen Sie normalerweise keine Bilder, die in den Anmeldeinformationen enthalten sind. wie Name, E-Mail, etc .. –

+0

@seanmonstar warum AJAX im traditionellen Sinn nicht erlaubt Ihnen, zu kodieren und lokale Dateien an einen Server zu senden. Wenn Sie verschiedene andere Parameter an einen Server senden können, warum können Sie das nicht für Dateieingaben tun? – Geek

9

Ich hatte mit Uploadify mehrere Probleme so wandte ich mich an ajax upload

+0

Link ist jetzt defekt und muss aktualisiert werden. Schande :( –

0

denke ich jQuery Plugin Fileuploader das Beste für das ist. Html5 API wird jetzt unterstützt, die Drag & Drop und mehrere Datei auswählen. Es ist plattformunabhängig und sehr einfach zu installieren.

http://pixelcone.com/fileuploader/

+0

Es wäre eine gute Wahl ... wenn es richtige lincing Informationen hätte. Ohne das würde ich es nicht empfehlen. @ John-Laniba, bitte, sei so nett und aktualisieren Sie Ihr Projekt damit. – OpaCitiZen

+0

Ich würde LIEBEN um es zu benutzen, wenn es einfach einzurichten war ... nur der Prozess dafür ist nervig. –