问题标签 [selectlist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
690 浏览

c# - MVC 扩展方法

我正在尝试编写一个简单的扩展方法,该方法允许我通过文本而不是值来选择 MVC SelectList 中的项目。

这就是我想出的,但是尽管在调试时将该项目设置为选中,但返回的 SelectList 的所有项目都带有 selected = false。

有任何想法吗?

0 投票
13 回答
195459 浏览

asp.net-mvc - 如何在 ASP.net MVC 中将项目添加到 SelectList

基本上,我希望在 SelectList 的开头插入一个项目,默认值为 0,文本值为“--Select One--”

就像是

这可以做到吗?

0 投票
23 回答
230309 浏览

c# - 如何让这个 ASP.NET MVC SelectList 工作?

我在控制器中创建了一个 selectList,以显示在视图中。

我正在尝试动态创建它,有点像这样......

它可以编译,但输出很糟糕......

请注意如何没有选择任何项目?

我怎样才能解决这个问题??

0 投票
1 回答
698 浏览

asp.net-mvc - ASP.NET - 后端的别名下拉列表名称

我正在使用 .NET 3.5,MVC。

我想使用一组字符串别名来表示数据库值。即,当用户从下拉列表中选择一个选项时,它实际上在表中将值设置为 0、1、2 等,而不是下拉列表中显示的文本。

例如我在做:

在视图中:

现在,这工作得很好。我无法开始工作的是在“详细信息”视图中显示该字段的值,并将“Thing C12”显示为文本而不是“2”。

另外,这是解决此问题的最佳方法吗?我不想使用数据库中的实际字符串,以防我修改条目上的文本(例如,将“Thing F4”的名称更改为“Thing F5”。)我完全愿意接受其他一些想法。

谢谢!

0 投票
2 回答
3917 浏览

asp.net-mvc - mvc - 下拉列表未在编辑视图中正确填充

我正在构建我的第一个 MVC 应用程序,并遵循了“NerdDinner”教程。但是,在以相同方式从 SelectList 创建下拉列表时,我遇到了问题。

出于某种原因,当我打开“编辑”视图时,下拉列表未显示正确的选择,即使数据在数据库中以其他方式设置并且“详细信息”视图显示了正确的值。每个人都只是想出列表中的第一个值。

我已经逐段浏览了 NerdDinner 代码,但我一生都看不到任何区别,但是该应用程序将在编辑时正确显示带有当前值的下拉列表,而我的却没有。

有人对从这里去哪里有建议吗?如果有人要求特定的东西,我可以发布代码片段。

更新:

在字段集中:

编辑动作:

以他们为 NerdDinner 示例构建它的相同方式,我创建了一个“...FormViewModel”:

当值已显示在详细信息视图中并存储在 d/b 中时,单击“编辑”时生成的 HTML:

相同表单中的文本字段的值已正确填充。只是所有的下拉菜单都没有!

非常感谢您的关注。

0 投票
2 回答
9174 浏览

asp.net-mvc - 将 SelectList "SelectedValue" 传递给控制器​​操作方法

我有一个注册表单,其中显示了用户名(文本框)、电子邮件(文本框)和部门(SelectList)。名称和电子邮件已预先填充(我使用的是 Windows 身份验证、Intranet 应用程序),并且我想将 DropDown 中的 SelectedValue 作为 Int32 发送到我的控制器,我不想将整个 SelectList 发回。这个列表现在很小,但会增长到相当大的规模。

我有一个名为 的类RegistrationViewModel,它包含这些字段的公共属性。但是,当我使用SelectListDivisionList 时,我收到此错误:No parameterless constructor defined for this object..

如果我更改类型,它没有问题,但 Division 为 null 或 0。有没有办法将 SelectedValue 从 DropDown 传递给控制器​​ Action 方法作为 Int32?

编辑1:

我不太确定自己在做什么,我已经使用 MVC 大约 48 小时,观看了 PDF、TechEd 和 TechDays 视频。

抱歉,这是我的控制器代码:

RegistrationViewModel班级

这是视图

编辑2:

Eilon:这也是我改变它的地方:

控制器:

看法:

我收到此异常:没有具有“IEnumerable”类型的键“DivisionValue”的 ViewData 项。

当我将视图更新为:

它工作得很好!只有在所有“部门”项目名称相同的情况下,它似乎才有效。如果我更改名称,View 崩溃或 ViewModel“Division”属性被发送为 0。

这是为什么?

0 投票
3 回答
979 浏览

asp.net-mvc - 在“GET”创建操作期间尝试填充下拉列表时出错

我试图更好地理解 C#、.NET 3.5 和 MVC 的新手。

我正在运行 MVC NerdDinner 示例,如果您在此处查看 ViewModel:http: //nerddinnerbook.s3.amazonaws.com/Part6.htm#highlighter_662935

您可以看到 Country 列表及其填充方式,这似乎工作正常,但我尝试在下面使用 LINQ 执行类似的操作,但使用 SelectList 方法时遇到了问题,即使它继承自 IEnumerable 接口。

我有一个带有状态表外键的任务表。当我对创建操作执行 GET 时,下面的代码给了我一个 NullReferenceException。我可以看到匿名任务对象不会设置状态..所以我可能需要检查它,但我不明白对于 NerdDinner 示例如何不这样做?

我使用 LINQ 对类型下拉列表进行了另一种方法,并且下拉列表的数量有效,但我尚未测试它是否在发布帖子并返回详细信息视图后选择了正确的值。我也想知道这是否应该如何移动到我的存储库中,而不是在我的控制器中让一个类做这种事情?

这是代码:

并且 TaskForm 视图继承 System.Web.Mvc.ViewUserControl

0 投票
2 回答
1969 浏览

asp.net-mvc - 使用 NHibernate 和 ASP.Net MVC 查找列表

我似乎无法获取选择列表的值来填充父对象的值。我正在使用一个包装器对象进行绑定,以便我可以访问 SelectList 所需的值以及需要该值的对象。我敢打赌我错过了一些基本的东西,但我找不到。

我有这些模型:

和一个包含状态列表的 FormViewModel(来自 NerdDinner 示例)

我在控制器上的创建操作看起来像......

我的问题对象被部分绑定,除了在视图中使用这些名称的状态:

0 投票
2 回答
3426 浏览

c# - C# Asp.Net MVC - 组合选择列表?

我有下面这两种方法。一个返回基于手机 ID 的制造商列表,另一个返回基于手机 ID 的手机列表(通过手机 ID 建立关系)。我如何将它们组合起来以返回一个带有组合制造商手机值的选择列表?(MVC 新手)

非常感谢帮助,

亲切的问候

0 投票
2 回答
1467 浏览

c# - 在 ASPNET.MVC 的 SelectList 中未记住 SelectedItem

我有以下代码,旨在用一堆整数值填充下拉列表,并使当前选定的值(在本例中为 13)成为选定项。

我使用了相同的技术,但对于字符串值,它工作得很好,每次我进入视图时都会记住当前值是什么。

在控制器中:

鉴于:

当我调试并观察 ViewData["Field"] 对象时,它的 selectedValue 确实为 13,因此它必须到达 View 但在那里被忽略,因为我在页面上看到的只是一个值为 1 到 15 的下拉列表,但显示 1 个(未选择,因此显示第一个)

这是一个错误还是我在做一些非常愚蠢的事情?

谢谢

格雷姆