2016-08-24 122 views
1

我想通過複選框傳遞我的布爾值。通過複選框傳遞布爾值

這裏是我的財產

public bool MyBooleanValue{ get; set; } = true; 

在這裏,我的HTML:

<input type="checkbox" id="@nameof(Model.MyBooleanValue)" name="my-boolean" value="1" class="" checked="checked" /> 

<label for="@nameof(Model.MyBooleanValue)">some text</label> 

<input type="hidden" name="my-boolean" value="true" /> 

在默認情況下,我想有檢查現場。這段代碼有什麼問題? 我使用ASP.NET MVC 5. 我總是得到相同的值

+0

只要使用'@ Html.CheckBoxFor(m => m.MyBooleanValue)' –

回答

3

最簡單的方法是使用MVC助手:

@Html.LabelFor(x => x.MyBooleanValue) 
@Html.CheckBoxFor(x => x.MyBooleanValue) 

您可以檢查的FormCollection如果MyBooleanValuetruefalse,取決於複選框的狀態。


另外也可以使用簡單的HTML代碼:

<label for="MyBooleanValue">Some label text</label> 
<input type="checkbox" id="MyBooleanValue" name="MyBooleanValue" checked="checked" value="Some value you want to pass if checked"> 

如果該複選框被選中的將在形式傳遞。否則,FormCollection不包含此值。