gpt4 book ai didi

asp.net-mvc-3 - 从 HTML.DropDownList 获取所选值返回 Controller (.Net MVC)

转载 作者:行者123 更新时间:2023-12-02 20:45:27 24 4
gpt4 key购买 nike

在 MVC 应用程序中,我有一个显示任务的 View 。任务应按分配到的员工进行过滤。员工显示在下拉列表中。

@using (Html.BeginForm("EmployeeDropUsed", "Task", new { id = ?? }))
{
@Html.DropDownList(
"EmployeeDrop", new SelectList(Model.Employees, "Id", "EmployeeName"), "Select employee",
new
{
onchange = @"
var form = document.forms[0];
form.submit();"
})
}

我有一个带有 ActionResult 的 TaskController,从表单中获取数据:

[HttpPost]
public ActionResult EmployeeDropUsed(int id)
{
Employee e = er.GetById(id);
return LoadControls(er.GetAll(), e.Tasks.ToList());
}

ViewModel 看起来像这样

public class TaskModel
{
public TaskModel(List<Employee> employees, List<Task> tasks)
{
Employees = employees;
Tasks = tasks;
}

public List<Task> Tasks { get; set; }
public List<Employee> Employees { get; set; }
}

问题是我不知道如何将所选值从下拉列表返回到 Controller 。我尝试在模型中使用 DropDownListFor 和 EmployeeId 属性:

@Html.DropDownListFor(m => Model.EmployeeId, Model.Employees, "Select Employee")

public int EmployeeId { get; set; }

结果是id始终为0。

最佳答案

那个 lambda 表达式不是不正确吗?难道不是吗

@Html.DropDownListFor(m => m.EmployeeId ....

而不是

@Html.DropDownListFor(m => Model.EmployeeId

关于asp.net-mvc-3 - 从 HTML.DropDownList 获取所选值返回 Controller (.Net MVC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10210305/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com