ファイルをdbに保存しようとしています。私はjavascriptを使ってformDataを使ってファイルを追加し、これをajax経由でポストオブジェクトとして追加しています。何らかの理由で何も送られません。ajaxでファイルを投稿するには?
私は間違っていますか?
HTML
<input type="file" style="display: none;" class="btn btn-primary uploadFile">
スクリプト:
addUploadFiles: function (files, data) {
$.each(files, function (i, v) {
var file = $(this).data("files");
data.append("file", file);
});
return data;
}
postUserData:
postUserData: function(url, data, callback) {
$.LoadingOverlay("show");
$.ajax({
url: url,
type: 'POST',
data: data,
cache: false,
processData: false,
contentType: false,
dataType: "HTML",
success: function(data) {
if (callback) {
callback(data);
$.LoadingOverlay("hide");
}
},
error: function(event, jqxhr, settings, thrownError) {
//$.helpers.errorHandler($("#fileDialogErrors"), event.responseText);
var h;
$.LoadingOverlay("hide");
}
});
},
のような見た目以上
$(".saveImage")
.on("click",
function() {
var files = $(".uploadFile");
var data = new FormData();
data = $.OverWatch.worker.uploadFileHandler.addUploadFiles(files, data);
$.OverWatch.worker.postUserData("/Administration/AddUserImage", data, function() {
alert("done");
});
});
機能
バックエンド:
public ActionResult AddUserImage()
{
if (Request.Files.Count != 0)
{
//save
}
return null;
}
編集:
var files = $(".uploadFile");
リターン:
'varファイル= $(これ)).data("ファイル ")とは何ですか? –
@StephenMueckeチェックの編集 – ThunD3eR
あなたはまだ私の質問に答えていません:) - 'undefined 'を返します。 –