asp.net-mvc – 列表中的MVC4绑定下拉列表(bug)
我在视图中有以下代码. (index.cshtml)
约束问题 >第一个下拉列表根据’ChildItem’编辑器模板选择正确的值. 如何修复绑定以便第二次下拉工作?我调试了它.看来ViewData.Eval没有从_.Children [i] .ChooseId中获取正确的值. 更新(错误) @using (Html.BeginForm()) { for (int i = 0; i < Model.Children.Count(); i++) { <p>A: @Html.EditorFor(_ => _.Children[i],"ChildItem")</p> <p>B: @Html.DropDownListFor(_ => _.Children[i].ChooseId,TestModel.PeopleSelect)</p> } <button type="submit">GO</button> } 我尝试过使用DropDownListFor(_ => Model.Children [i] .ChooseId),结果相同. 这里参考的是ChildItem.cshtml @using dropdown.Controllers @using dropdown.Models @model dropdown.Models.TestPerson @Html.DropDownListFor(_ => _.ChooseId,TestModel.PeopleSelect) 它看起来像这样: 解决方法
我后来发现了这个:
http://aspnet.codeplex.com/workitem/8311
这是一个确认的错误. 我找到的唯一解决方法就是这个. 标记所选项目 @ Html.DropDownListFor(_ => _.Children [i] .ChooseId,Mark(TestModel.PeopleSelect,Model.Children [i] .ChooseId)) 标记功能/扩展方法 @functions { private IEnumerable<SelectListItem> Mark(IEnumerable<SelectListItem> items,object Id) { foreach (var item in items) if (string.CompareOrdinal(item.Value,Convert.ToString(Id)) == 0) item.Selected = true; return items; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 在会话中存储购物车
- asp.net – 在machine.config中存储连接字符串vs将它们存储
- asp.net – 下拉列表和字段验证引起了骚乱
- asp.net – 使用json仅序列化对象的一部分
- 将自定义ValueProviderFactories添加到ASP.NET MVC3?
- asp.net-mvc – 无法加载文件或程序集“System.Web.Provide
- Razor 页面简化了 ASP.NET MVC 应用程序
- asp.net – 如何使用EntityFramework种子数据代码第一次迁移
- asp.net – 在MVC3中共享区域之间的控制器和视图
- asp.net – 有没有办法动态更新Web API CORS中允许的来源列
- asp.net – 我是否需要viewstate来输入控件,如复
- asp.net-mvc – 在ASP.NET MVC中执行原始SQL查询
- 缺少ASP.NET_SessionId
- asp.net-mvc – jQuery $.get调用Controller中的
- asp.net-web-api – ASP.NET Web API避免查询字符
- 是否值得使用ASP.Net内置的配置文件系统?
- ABP虚拟文件系统(VirtualFileSystem)实例------定
- asp.net-mvc – MVC4 Razor对大括号感到困惑
- asp.net-mvc – 用于拆分日期时间字段的ASP.NET
- asp.net web.config加密解密方法