2013-05-07 2 views
0

MVC에서 여러 확인란을 사용할 수 있습니까? 아래 예제를 사용할 때 쿼리 문자열에 true 및 false 값을 모두 가져옵니다. True로 선택했거나 False로 체크하지 않은 경우 전달하려고합니다.ASP.NET MVC에서 다중 확인란 사용

'http : //'webapp ': 5841/Result/Triggers? '알코올 = 사실 & 알코올 = 거짓 & 각성 = 사실 & 각성 = 거짓 & 커피 = 사실 & 커피 = false를

public class Triggers 
{ 
    public string Alcohol { get; set; } 
    public string Awakening { get; set; } 
    public string Coffee {get; set;} 

} 



@using (HTML.BeginForm("Triggers", "Result", FormMethod.Get)) 
      { 
        '@Html.CheckBox("Alcohol")' 

        '@Html.CheckBox("Awakening")' 

        '@Html.CheckBox("Coffee")' 
       } 


    [HttpGet] 
    public ViewResult Triggers() 
    { 
     return View(); 
    } 
+0

여기를보세요 : http://stackoverflow.com/questions/5462967/razor-viewengine-html-checkbox-method-creates-a-hidden-input-why – Floremin

답변

3

이것은 의도적으로 설계된 사실이다.

CheckBox() (및 RadioButton()) 도우미는 두 번째 <input type="hidden" name="yourName" value="False" />을 생성합니다.

이렇게하면 모델 바인딩을 위해 체크되지 않은 체크 상자가 서버로 다시 전송됩니다.

확인란을 선택하면 브라우저에서 두 개의 값을 보내고 모델 바인더는 두 번째 값을 사용합니다.

+0

.net mvc에서 가장 이상한 gotchas 중 하나. –

+0

그래서 true 값을 사용하려면 어떻게해야합니까? – user2224493

+0

@ user2224493 : 모델 바인더가이를 자동으로 처리합니다. – SLaks

관련 문제