如何在 MVC 控制器中获取 DropDownList 选定的文本

新手上路,请多包涵

我在 html 中有这个 DropDownList,我可以在其中选择 Texts.Text = Project, Value = ID

  @Html.DropDownList("Project", new SelectList(Model.dropConfig, "Project", "ID"), "-- Select LineID --", new { required = true, @class = "form-control" })

单击控制器中的提交按钮,我可以看到值 (ID) 已传递并回传给数据库。我希望将文本发布到数据库中。

控制器端代码行:

 detailsConfig.Project = Convert.ToString(form["Project"]);

例如:如果下拉列表值是

Project     ID
test        1
testagain   2

在控制器中我应该得到测试,而不是 1。请帮忙

原文由 shrey Pav 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 375
2 个回答
new SelectList(Model.dropConfig, "Project", "Project")

上述更改解决了我的问题。谢谢@StephenMuecke :)

原文由 shrey Pav 发布,翻译遵循 CC BY-SA 3.0 许可协议

您使用该下拉更改事件并将该名称存储在隐藏字段中,并将该值传递给控制器。

看法:-

 @Html.DropDownList("Project", new SelectList(Model.dropConfig, "Project", "ID"), "-- Select LineID --", new { required = true, @class = "form-control",@id="ddlProject" })

<input type="hidden" id = "hdnProjectName" name="ProjectName" />

查询:-

 $("#ddlProject").on("change", function () {
              $("#hdnProjectName").val($(this).find("option:selected").text());
        });

控制器:-

 public ActionResult Save(FormCollection formcollection)
{
   var projectName = formcollection["ProjectName"];
 }

原文由 Dhiren Patel 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题