0
FormData
オブジェクトを使用してスプリングサーバーにファイルをアップロードしようとしています。そして、私はtype="file"
の入力を隠します。しかし、私がフォームを提出すると、それは動作していません。私はどこが間違っているのか分かりません。FormDataを使用してサーバーにファイルをアップロードするにはどうすればよいですか?
これはhtml
の一部です。何らかのボタンをクリックすると、saveFiles()
が呼び出されます。あなただけのファイルをアップロードするためFORMDATA使用することはできません
<script src="http://malsup.github.com/jquery.form.js"></script>
<form name="fileForm" id="fileForm" method="post" enctype="multipart/form-data">
<input style="display:none" type="file" id="fileSelector" name="fileSelector" multiple="" />
<input type="hidden" id="docId" value="${doc.id}" />
<div id="files"></div>
</form>
(function (global, $) {
...
initFilehandler();
...
}
function initFilehandler() {
document.querySelector('#fileSelector').addEventListener('change', handleFileSelect, false);
selDiv = document.querySelector("#files");
}
function saveFiles() {
$("form#fileForm").submit(function(event){
event.preventDefault();
var formData = new FormData($(this)[0]);
console.log(formdata);
$.ajax({
url: "/rd/file/save",
type: "POST",
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function() {
alert("success");
}
});
});
}