2014-10-09 3 views
0
@Html.CheckBoxFor(m => m.Close, new { disabled = "disabled" }) 

위의 html 헬퍼 메소드는 다음과 같은 html 코드를 생성합니다.컨트롤러에 잘못된 값을 게시하는 Html.checkboxfor

<input checked="checked" data-val="true" data-val-required="The Close field is required." disabled="disabled" id="Close" name="Close" type="checkbox" value="true"> 

<input name="Close" type="hidden" value="false"> 

양식을 제출하면 양식이 잘못 다시 게시됩니다. 어떤 아이디어가 될 수 있습니까? 나는 바이올린에있는 포스트 백 값을 확인했다.

답변

2

비활성화 된 컨트롤은 다시 게시되지 않습니다. @Html.CheckBoxFor()은 확인란과 숨겨진 입력을 모두 기본값 (false)으로 생성하므로 숨겨진 입력 만 게시되고 Close의 값은 false입니다.

+0

아 덕분에, 당신은 읽기 전용/비활성화 확인란이 컨트롤러에 다시 제출하고 주변에 어떤 방법을 알 수 있습니까? –

+0

편집 할 수 없으므로'@ Html.hiddenFor (m => m.Close)'를 사용하여 다시 게시하므로 속성에 대한 시각적 표시가 필요하면'@DisplayFor (m => m.Close)' –

+0

@DisplayFor (m => m.Close)가 작업을 수행했습니다. –

0

이것은 당신이 당신의 컨트롤러에 거짓 여부 거짓을 확인 할 수있는 방법입니다 :

var isChecked = Request.Form["Modelname"]; 
관련 문제