Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net IE7中的下拉式客户端验证,使用Html.ValidateFor()助手_Asp.net_Asp.net Mvc_Validation_Asp.net Mvc 2_Client Side - Fatal编程技术网

Asp.net IE7中的下拉式客户端验证,使用Html.ValidateFor()助手

Asp.net IE7中的下拉式客户端验证,使用Html.ValidateFor()助手,asp.net,asp.net-mvc,validation,asp.net-mvc-2,client-side,Asp.net,Asp.net Mvc,Validation,Asp.net Mvc 2,Client Side,我有一个奇怪的问题,关于我的表单上下拉列表的验证。一个下拉列表是状态列表,并用RequiredAttribute修饰: [Required(ErrorMessage="State is required.")] 在视图中,下拉列表及其验证定义为: <%: Html.DropDownListFor(m => m.State, new SelectList(BusinessLayer.UsStates.GetList())) %> <% Html.ValidateFor(m

我有一个奇怪的问题,关于我的表单上下拉列表的验证。一个下拉列表是状态列表,并用RequiredAttribute修饰:

[Required(ErrorMessage="State is required.")]
在视图中,下拉列表及其验证定义为:

<%: Html.DropDownListFor(m => m.State, new SelectList(BusinessLayer.UsStates.GetList())) %>
<% Html.ValidateFor(m => m.State); %>
这真让人讨厌……)

解决了我的问题:

IE7对没有呈现每个选项的value属性感到不高兴。因此,将一个
列表
传递到
SelectList()
中并没有切断它。必须传入键/值对类型对象的列表,并传入DataValueField和DataTextField参数,如下所示:

<%: Html.DropDownListFor(m => m.State, new SelectList(BusinessLayer.UsStates.GetList(), "Value", "Text"))%>
<%: Html.DropDownListFor(m => m.State, new SelectList(BusinessLayer.UsStates.GetList(), "Value", "Text"))%>
m.State,新建SelectList(BusinessLayer.UsStates.GetList(),“值”,“文本”))%>

这真让人讨厌……)

IE7中有javascript错误吗?