フォームからチェックボックスの値を取得する際に問題が発生しました。私はおそらく何か間違ったことをしているのですが、私は一生それを理解することができません。
私の見解のコードは次のようになります。
@using (Html.BeginForm("DisplayEmpPhotos", "Home", null, FormMethod.Post, new { id = "GetEmpNumbers" }))
{
<div id = "empForm">
<br/>
Event Name:<input type ="text" name="EventName"/>
<br/>
Event Dates:<input type ="text" name="EventDates"/>
<br/>
<br/>
<br/>
Enter Employee IDs:
<br/>
Consultant: <input type="checkbox" name="consultant" value="include" checked="checked" />
<br/>
}
そのチェックボックスの下にいくつかのテキストボックス入力がありますが、それらは正常に機能します。
私のコントローラーのコードは次のようになります。
public ActionResult DisplayEmpPhotos(string EventName, string EventDates, string consultant)
{
ViewData["EventName"] = EventName;
ViewData["EventDates"] = EventDates;
if(consultant == "include")
{
ViewData["Image"] = "<img src ='imgsrc' alt='First Last' class='nopad'/>";
ViewData["Name"] = "First Last";
ViewData["Deparment"] = "C";
ViewData["Title"] = "Consultant";
}
ビューにはこれが含まれています:
<td class="smalltext">
@ViewData["Image"]
<p>
@ViewData["Name"]
</p>
@ViewData["Department"]
<br/>
@ViewData["Title"]
</td>
このチェックボックスをオンにすると、その値が渡され、その情報にViewdataを割り当てて、ビューに表示できるようになるはずだと思いました。このような値のハードコーディングは悪い習慣ですが、私が行っていることには問題ありません。私が間違っていることについての助けはありがたいです。