【发布时间】:2015-01-15 23:58:37
【问题描述】:
我还是 MVC 的新手,我不太明白 EditorFor 在 MVC 5 中的工作原理。
我正在基于现有数据库构建项目,因此对 EF 使用 Database First 方法是有意义的。我创建模型和初始模板没有问题,但我的数据库中有一列如下所示:
Plant ID Leaf Color
1 Green
2 Yellow
3 Green
4 Red
5 Green
6 Purple
由于绿色和黄色是植物叶子更常见的颜色,
问题的第一部分:我想创建一个带有选项的 DropDownList:
Green, Yellow and Other。 (也就是说,如果颜色是红色,它应该指向 DropDownList 中的“其他”)-
问题的第二部分:发生这种情况,或者选择“其他”时,将出现新的
TextBox将显示用户手动输入颜色。
因此,它还会弄乱模型绑定和 MVC 验证。
在 MVC 5 中,当使用 MVC Controller with read/write actions and views, using Entity Framework 创建模板时,EditorFor 将自动为该字段创建 TextBox。 Index.cshtml 和Delete.cshtml 没有问题,因为它们不涉及EditorFor。但是,问题出现在Edit.cshtml和Create.cshtml。
我将如何实现我所需要的?
附加信息:我非常熟悉 jQuery,在做 ASP.NET WebForm 时,我知道如何使用 jQuery 隐藏/显示文本框,但我似乎不明白如何将其应用于 EditorFor 和标签为
【问题讨论】:
-
为下拉菜单和文本框创建一个具有单独属性的视图模型
标签: c# asp.net asp.net-mvc razor