2013-03-13 5 views
0

양식에서 확인란의 값을 가져 오는 데 문제가 있습니다. 나는 아마 뭔가 잘못하고있는 것이지만, 내 삶에 대해 알아 내지 못합니다.양식의 확인란에 기반한보기에 표시

내보기의 코드는 다음과 같습니다

@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&nbsp;Last' class='nopad'/>"; 
     ViewData["Name"] = "First&nbsp;Last"; 
     ViewData["Deparment"] = "C"; 
     ViewData["Title"] = "Consultant"; 
    } 

뷰는이 있습니다 상자를 선택하면

<td class="smalltext"> 
     @ViewData["Image"] 
     <p> 
     @ViewData["Name"] 
     </p> 
     @ViewData["Department"] 
     <br/> 
     @ViewData["Title"] 
</td> 

내 생각은, 그것의 값이 전달되는 것을 그 정보에 Viewdata를 할당하고 뷰에 표시 할 수 있어야합니다. 이런 값을 하드 코딩하는 것은 나쁜 습관이라는 것을 압니다.하지만 제가하고있는 일은 받아 들일 수 있습니다. 내가 뭘 잘못하고 있는지에 대한 도움이 인정됩니다.

답변

2

Controller 메소드의 변수가 "consultant"일 때 "checkbox"라는 변수가 있고 실제로는 CheckBox 헬퍼를 사용해야합니다. 그래서보기

:

public ActionResult DisplayEmpPhotos(string EventName, string EventDates, bool consultant) 
{ 
    ViewData["EventName"] = EventName; 
    ViewData["EventDates"] = EventDates; 

    if(consultant) 
    { 
     ViewData["Image"] = "<img src ='imgsrc' alt='First&nbsp;Last' class='nopad'/>"; 
     ViewData["Name"] = "First&nbsp;Last"; 
     ViewData["Deparment"] = "C"; 
     ViewData["Title"] = "Consultant"; 
    } 
} 

이 당신을 위해 작동하지 않는 경우 알려줘 :

Consultant: @Html.Checkbox("consultant", true) 

그리고 컨트롤러에

은 부울로 값을 변경합니다.

+0

감사합니다. 데이터는 여전히 내보기에 표시되지 않습니다. 나는 그 코드로 질문을 편집 할 것이다. –

+0

몇 가지 업데이트를했습니다. –

0

에있는 경우 동작 결과string checkbox에서 string consultant으로 변경됩니까?

때로는 MVC가 저에게이를 알려주고 입력의 이름을 actionResult에서 어떻게 선언했는지 정확하게 변경합니다.

관련 문제