0
私はasp.net mvcアプリケーションを使用していて、画像をアップロードしようとしています。 JavaScript値をmvcモデルプロパティに割り当てる
この
は @Html.Label("Logo Upload", new { @class = "col-md-3 control-label" })
<div class="col-md-7">
<input type="file" class = "col-md-3 control-label" id="UploadImg" value="@Model.FundDetail.ImagePath" name="@Model.FundDetail.ImagePath" /> <br /><br />
<br />
</div>
</div>
は、画像のアップロードが正常に動作しているが、値がモデルのプロパティに代入されていない私は、アップロードされた画像を表示しています。ここの画像機能
$(document).ready(function() {
TableDatatablesEditable.init();
$("#UploadImg").change(function() {
var data = new FormData();
var files = $("#UploadImg").get(0).files;
if (files.length > 0) {
data.append("MyImages", files[0]);
}
$.ajax({
url: "@Url.Action("UploadFile")",
type: "POST",
processData: false,
contentType: false,
data: data,
success: function (response) {
$("#HeaderInput").text('/Upload/' + response);
$("#imgPreview").attr('src', '/Upload/' + response);
},
error: function (er) {
alert(er);
}
});
});
});
をアップロードしている"@Model.FundDetail.ImagePath"
どのように私はJavaScriptから値を割り当てることができます。誰も私にこれを行う方法を提案することはできますか?事前
セキュリティ上の理由からファイル入力に値を割り当てることはできません。設定できるのは、ユーザーがファイルを選択することだけです。このコードを使って何をしようとしていますか? ( 'name =" @ Model.FundDetail.ImagePath "は意味がありません) –
私は他の入力とアップロードボタンを持っているプロフィール作成ページを持っています。送信ボタンをクリックすると、ユーザー情報が画像とともに保存されます。それで画像が選択されたら、画像を保存する必要があります –
そのとき、または他の入力でフォームを投稿したとき(なぜファイルをアップロードするためにajaxを使用するのかはっきりしません)。あなたのビューモデルは、(例えば) 'HttpPostedFileBase Image'というプロパティを持っていなければなりません。そして、ファイル入力は' @Html.TextBoxFor(m => m.Image、new {type = "file"}) 'となります。バインドされた –