Как установить флажок ASP.Net MVC 3.0 для проверки по умолчанию? - PullRequest
2 голосов
/ 20 октября 2011

Я хочу, чтобы у mt view был установлен флажок по умолчанию, я пробовал что-то подобное.

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

, а также

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

в обоих случаях это выдает ошибку, Строка не была распознана как допустимое логическое значение.

Моя собственность определена следующим образом.

private bool _deafaultchecked = true;

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

любые предложения, пожалуйста?Так как я не мог найти решение или это.Я сделал это так.

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

это работает для моего требования.спасибо всем, кто мне помог.

Ответы [ 4 ]

1 голос
/ 03 июня 2013

В действии контроллера, в котором вы создаете модель, просто установите для этого поля значение true.

Например

return View(new DriverCsvModel{SendEmails = true});

Вы должны использовать состояние модели, а не переводить пользовательский интерфейс в проверенное состояние.

1 голос
/ 13 июня 2012

В методе Create вашего контроллера (я полагаю) вы пробовали это?

public ActionResult Create()
{
    return View(new YourModelClass { GenericsOk = true });
}
0 голосов
/ 20 октября 2011

Вы захотите удалить часть тега @ @ = = selected из атрибутов HTML.Если свойство viewmodel является логическим, тогда оно не нужно при использовании CheckBoxFor

0 голосов
/ 20 октября 2011

В конструкторе по умолчанию для вашего класса модели вы можете установить для свойства "GenericsOK" значение "True"

...