У меня есть эта неприятная проблема с флажком, созданным с использованием метода расширения Html.Checkbox
. По-видимому, состояние флажка не сохраняется в случае обратной передачи (из-за ошибки проверки формы). Ввод в код MVC сам (System.Web.Mvc.Html.InputExtensions
) Я узнал, что свойство «checked» определяется путем вызова htmlHelper.EvalBoolean(name)
.Html.Checkbox не сохраняет свое состояние в ASP.net MVC
Этот метод ищет ключ (указанный в аргументе имени) самой ViewData. Проблема в том, что значение флажка фактически находится в ModelState. Вызов htmlHelper.GetModelStateValue(name, typeof(bool))
вернет ожидаемый результат.
Является ли это недостатком в реализации флажка?
проверки на стороне клиента является 'Приятно иметь', но не является удовлетворительным. В конце концов, большинство сайтов должны проверять на стороне сервера –