私はasp.net MVC3を使用しています
フォームを送信する前に画像をアップロードしたい。
以下は私のコードです
<div>
@using (Html.BeginForm("SaveData", "Home", FormMethod.Post, new { @enctype = "multipart/form-data" }))
{
<div> Image:
<input type="file" name="uploadFile" onchange="upload(this);" /></div>
<div> Name:
@Html.TextBoxFor(model => model.Name)</div>
<div> Address:
@Html.TextBoxFor(model => model.Address)</div>
<div> Phone:
@Html.TextBoxFor(model => model.Phone)</div>
<input type="submit" name="save" id="savedata" title="save"
value="save" />
}
</div>
<script type="text/javascript">
function UploadFile(image) {
//call controller action UploadFile
$.ajax({
type: "Post",
url: "Home/UploadFile",
data: image, //This is wrong
contentType: "application/json; charset=utf-8",
dataType: "json"
});
}
</script>
今度はコントローラー側
public ActionResult UploadFile(HttpPostedFileBase uploadFile)
{
//save image
}
フォームを投稿してデータを保存する前に、画像をアップロードする方法を誰でも提案できますか。