2016-06-14 6 views
0

このような編集フォームにコードがあります。学生コントローラ編集フォームにある入力ファイルコントロールからファイルを選択したときにコントローラでアクションを実行する方法

HttpPostedFileBase file; 
public ActionResult Bind() 
{ 
    file = Request.Files["ImageData"]; 
    file = Request.Files["ImageData"]; 
    return RedirectToAction("StudentEdit"); 
} 

@using (Html.BeginForm("Bind", "Student", FormMethod.Post, new { enctype = "multipart/form-data" })) 
{ 
<img id="sp" src="/Student/RetrieveImage/model.StudentID" alt="Photo" height=100 width=200 /> 
<input type="file" name="ImageData" id="ImageData" onchange="DI();"/> 
} 

そして、これは開始フォームは、部分的形式でのEditFormで発見されました。必要なのは、ファイルが入力ファイルから選択されたときにバインドアクションを起動することです。これどうやってするの?

答えて

1

あなたはあなたの例では、あなたがアップロードを続行するには、2つの主要なオプションがあり、(HTTPのPOST動詞で)画像をアップロードするためのフォーム(HTML要素)を使用して作業している:

第1 'オプションを:作成フォーム内

@using (Html.BeginForm("Bind", "Student", FormMethod.Post, new { enctype = "multipart/form-data" })) 
{ 

    <input type="file" name="ImageData" id="ImageData" onchange="DI();"/> 
    <input type="submit" name="submitbutton" value="Upload" /> 
} 

第2 'オプションを入力を提出:

@using (Html.BeginForm("Bind", "Student", FormMethod.Post, new { enctype = "multipart/form-data" })) 
{ 
    <input type="file" name="ImageData" id="ImageData" onchange="this.form.submit();"/> 
} 
:この例では、JavaScriptでフォームを送信する私は、ファイルの要素で作成されたイベントを使用しました
関連する問題