Search code examples
asp.net-mvc-3checkboxfor

How to have ASP.Net MVC 3.0 Checkboxfor as checked by default?


I want mt view to have the check box checked by default, I tried something like this.

@Html.CheckBoxFor(model=>model.GenericsOK, new { id = ViewBag.GenericsOK, @checked = true })

and also

@Html.CheckBoxFor(model=>model.GenericsOK, new { id = ViewBag.GenericsOK, @checked = "checked"})

in both cased it give the below error. String was not recognized as a valid Boolean.

My property is defined as this.

private bool _deafaultchecked = true;

    [Display(Name = "Generics Ok")]
    public bool GenericsOK
    {
        get { return _deafaultchecked; }
        set { _deafaultchecked = value; }
    }

any suggestions please?



Since i could not find a solution or this. i got this done like this.

 @Html.CheckBox("GenericsOK", true, new {id=ViewBag.GenericsOK, name="GenericsOK" })

this works for my requirement. thanks for all who helped me.


Solution

  • You will want to remove the @checked="checked" portion of the HTML attributes. If the viewmodel property is a boolean then it is unnecessary when you use the CheckBoxFor