2017-05-23 2 views
1

asp.net 웹 사이트를 만들었지 만 확인란은 항상 false입니다. 이게 왜 그렇게?ASP.NET MVC 확인란 항상 false

모델 :

public string Username { get; set; } 
public string Password { get; set; } 
public bool Remember { get; set; } 

CSHTML : 체크 박스는 다음 Remember 여전히 거짓 선택된 경우

<div class="form-group"> 
    @Html.Label("Remember me?") 
    @Html.CheckBoxFor(m => m.Remember) 
</div> 

Remember 속성은 항상 false입니다.

+2

혹시 true로 설정 함을 되먹임 드릴 것입니다 희망? – Avitus

+0

아니요, 확인란을 선택하면 false입니다. – mrnn

답변

2

같은 문제가있어서 HTML 체크 박스 태그를 작성하여 속성 이름과 동일한 이름을 지정하고 값을 true로 설정했지만 확인란을 선택하지 않으면 값을 제출하지 않아도 걱정할 필요가 없습니다.

@ Html.CheckBoxFor (m => m 어쨌든, 귀하의 경우 이 그것을

<input type="checkbox" name="Remember" value="true" />

0

첫번째 파라미터는 체크 박스 값이 아니라 오히려 모델 따라서 체크 박스 결합을 볼 수있을 것이다. SomeBooleanProperty, 새로운 {@checked = "checked"}); 첫 번째 매개 변수는 모델 내의 부울 속성을 식별해야합니다 (값을 반환하는 익명 메서드가 아닌 Expression 임). 두 번째 속성은 추가 HTML 요소 특성을 정의합니다. 나는 위의 속성이 처음에 체크 박스를 검사 할 것이라고 100 % 확신하지는 않지만 시도 할 수 있습니다. 그러나 조심하십시오. 작동하더라도 유효한 모델 데이터를로드하고 특정 속성을 false로 설정하면 나중에 문제가 발생할 수 있습니다.

소스 및 추가 정보는 : https://stackoverflow.com/a/12674731/3397630

은, 친절하게 당신을 위해 도움이 당신의 생각을 알거나

감사 KARTHIK

+0

그것은 정확히 OP가 이미 가지고있는 것입니다! - '기억'과'@Html.CheckBoxFor (m => m.Remember)'라는 이름의 'bool' 속성 (그리고'new {@checked = "checked"} 설정은 무의미합니다. 그 체크 –