在 mvc JavaScript 中的下拉更改选择上加载列

Posted

技术标签:

【中文标题】在 mvc JavaScript 中的下拉更改选择上加载列【英文标题】:Load column on drop down change selection in mvc JavaScript 【发布时间】:2019-12-22 18:55:13 【问题描述】:

如何在选择项目名称下拉列表中将员工姓名列表放在一栏中?同时除了员工姓名1个文本框和1个日期过滤框也应该动态生成。我不擅长脚本技术,需要一些指导。

【问题讨论】:

【参考方案1】:

这就是我的做法,如果有人有任何批评,请告诉我!

    在页面的控制器操作中,返回视图模型中的项目对象列表。每个 Project 对象应该至少有两个属性;一个用于名称,一个用于唯一 ID。在页面的 Razor 视图中,通过 DropDownList html Helper 呈现项目对象。

    接下来,设置一个Web API 端点,用于根据分配到的项目检索员工列表。

    在显示列表的 Razor 页面中,编写一些 javascript,在更改 Project DropDownList 的值时执行。 JavaScript 应获取项目下拉列表的更新值,使用该值调用 Web API 端点以检索员工(基于项目 ID),并在 HTML 选择元素中呈现结果数据。

【讨论】:

感谢您的快速回复,我创建了下拉菜单,项目名称即将到来,并且在选择时更改其调用员工 ID 方法的方法,但在 API 端我总是得到 null 甚至我写了 Linq 来获得我的项目与员工表的正确映射。我无法在调试模式下访问我的 API。任何建议 @DevSahu 你在哪里得到空值?您应该能够在调试模式下点击 API 端点,如果您尝试点击端点会显示什么? 即使在邮递员 404 错误中也出现空引用我交叉检查了所有参数名称和 url 在 apihelper 类中是否正确获取 url 也正确但结果和响应我得到 null Var req= client.GetAsync(字符串)。这里的结果 req 对我来说是空的。 检查您的路由是否为您的 API 正确设置。如果您可以更新您的帖子以包含任何代码段,那将真的很有帮助。 这是属于门户方法[HttpGet] public ActionResult GetProjectByID(int ID) ProjectMasters model = new ProjectMasters(); if (ID != 0) model = APIHelper.Instance.GetData(AppConfiguration.ResourceReleaseAPIURL() + "GetProjectMaster?id=" + ID); return PartialView("_ResourceRelease", model);

以上是关于在 mvc JavaScript 中的下拉更改选择上加载列的主要内容,如果未能解决你的问题,请参考以下文章

MVC3:通过Javascript获取下拉菜单选择的值/文本

MVC5 @Html.EditorFor:第二个属性问题

在 MVC 中选择下拉菜单的设置值问题

根据下拉菜单中的选择更改 div 的内容

在 ASP.NET MVC 中的下拉列表上触发 jQuery 更改事件并将参数传递给 url 操作

如何验证 mvc 4.5 中的选择下拉列表?