Remote File Upload in Grails
-
03-07-2019 - |
Frage
Ich schaffe eine Webapplikation Grails verwendet, die viel ajax.I verwendet wollen Datei-Upload implementieren mit ajax.I weiß nicht, wie Ajax zu verwenden, für die Datei upload.My Probe GSP-Code:
<!-- code for file upload form-->
<div id="updateArea">
</div>
Ich habe versucht, mit und .Nach Hochladen möchte ich mit dem result.In Ergebnis der ‚updateArea‘ aktualisieren I Details der hochgeladenen Datei zu zeigen, habe vor.
Lösung
eine Datei über Ajax-Upload ist nicht wirklich möglich. Sie können immer noch eine Datei im Hintergrund mit einem versteckten iframe laden und entweder bewerten repsonse (die innerhalb des iframe ist dann) oder eine andere Ajax-Aufruf ausgelöst, nachdem der Upload abgeschlossen ist.
<g:form name="upload-form" action="upload" method="post" enctype="multipart/form-data" target="hidden-upload-frame">
File: <input type="file" name="myFile" />
<button type="submit">Upload</button>
</g:form>
<iframe id="hidden-upload-frame" name="hidden-upload-frame" style="display: none" onload="onUploadComplete">
</iframe>
<script type="text/javascript">
function onUploadComplete(e) {
// Handle upload complete
alert("upload complete");
// Evaluate iframe content or fire another ajax call to get the details for the previously uploaded file
}
</script>
Eine andere Möglichkeit ist es, einen Flash-basierten Upload-Mechanismus zu verwenden (z. B. swfupload ) anstelle des iframe.
Andere Tipps