Asp.net mvc 3 MVC3 DropDownList-如果仅显示1项,则不进行验证
我有一个下拉列表中显示的项目列表……当我在视图中使用下面的代码时,使用(htmlattribute size=“4”) 验证有效…即整个列表以红色突出显示,并显示验证错误消息 但是,当我使用下面这一行时(htmlattribute size=“1”) 验证不起作用,并且在控制器中触发post操作Asp.net mvc 3 MVC3 DropDownList-如果仅显示1项,则不进行验证,asp.net-mvc-3,Asp.net Mvc 3,我有一个下拉列表中显示的项目列表……当我在视图中使用下面的代码时,使用(htmlattribute size=“4”) 验证有效…即整个列表以红色突出显示,并显示验证错误消息 但是,当我使用下面这一行时(htmlattribute size=“1”) 验证不起作用,并且在控制器中触发post操作 您知道如何让validatioin在任何时候只使用一个下拉列表显示的项目吗?您能在模型上显示您的System.ComponentModel.DataAnnotations。SelectedOptions
您知道如何让validatioin在任何时候只使用一个下拉列表显示的项目吗?您能在
模型上显示您的System.ComponentModel.DataAnnotations
。SelectedOptions
属性吗?当然[需要(ErrorMessage=“您必须至少选择一个选项。”)]public IEnumerable SelectedOptions{get;set;}尝试将中的模型中的SelectedOptions
更改为String
-或任何最能描述它的数据类型。换句话说,去掉可枚举定义。我怀疑{Size=1}期望从模型中获取/设置不可枚举的值。
@Html.DropDownListFor(x => x.SelectedOptions, new SelectList(Model.Options, "Id", "Value", Model.SelectedOptions), new { size = "4", style = "width: 160px" })
@Html.ValidationMessageFor(modelItem => Model.SelectedOptions)
@Html.DropDownListFor(x => x.SelectedOptions, new SelectList(Model.Options, "Id", "Value", Model.SelectedOptions), new { size = "1", style = "width: 160px" })
@Html.ValidationMessageFor(modelItem => Model.SelectedOptions)