多くのajaxを使用するgrailsを使用してWebアプリケーションを作成しています.ajaxを使用してファイルアップロードを実装したい.ファイルアップロードにajaxを使用する方法がわかりません.私のサンプルGSPコードは次のとおりです。
<!-- code for file upload form-->
<div id="updateArea">
</div>
アップロードした後、結果で「updateArea」を更新したいので、アップロードしたファイルの詳細を表示する予定です。
多くのajaxを使用するgrailsを使用してWebアプリケーションを作成しています.ajaxを使用してファイルアップロードを実装したい.ファイルアップロードにajaxを使用する方法がわかりません.私のサンプルGSPコードは次のとおりです。
<!-- code for file upload form-->
<div id="updateArea">
</div>
アップロードした後、結果で「updateArea」を更新したいので、アップロードしたファイルの詳細を表示する予定です。
Ajax 経由でファイルをアップロードすることは実際には不可能です。非表示の iframe を使用してバックグラウンドでファイルをアップロードし、アップロードの完了後に応答 (iframe 内) を評価するか、別の ajax 呼び出しを起動することができます。
<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>
もう 1 つのオプションは、iframe の代わりにフラッシュ ベースのアップロード メカニズム (例: swfupload ) を使用することです。