C# 如何通过另一个下拉列表中的操作填充下拉列表?
我正在使用MVC4.0,我需要一个包含3个下拉列表和一个表的页面 当从DDL1(例如用户)中选择项目时,则填充DDL2(例如帐户)。 当从DDL2帐户中选择项目时,则填充DDL3,例如卡片。 当从DDL3中选择一个项目时,表格必须显示对象列表,例如带有金额的交易等 因此,我创建了一个TransactionManagementController并创建了一个索引操作,用于加载用户并在最初显示它们C# 如何通过另一个下拉列表中的操作填充下拉列表?,c#,asp.net-mvc,razor,asp.net-mvc-4,C#,Asp.net Mvc,Razor,Asp.net Mvc 4,我正在使用MVC4.0,我需要一个包含3个下拉列表和一个表的页面 当从DDL1(例如用户)中选择项目时,则填充DDL2(例如帐户)。 当从DDL2帐户中选择项目时,则填充DDL3,例如卡片。 当从DDL3中选择一个项目时,表格必须显示对象列表,例如带有金额的交易等 因此,我创建了一个TransactionManagementController并创建了一个索引操作,用于加载用户并在最初显示它们 public ActionResult Index() {
public ActionResult Index()
{
var vm = new VmTransactionManagement
{
Users = db.Users.ToList()
};
return View(vm);
}
<th>User:</th>
<td>@Html.DropDownListFor(m => m.SelectedUser,
Model.UsersSelectList,
"-- Select One --")</td>
此外,我还为此控制器创建了一个视图模型:VmTransactionManagement,其中包含一些其他需要的对象
那么,现在我该如何编写代码,以便在选择DDL1时传递userId,然后填充DDL2
我是否应该创建一个新的动作/视图并通过Ajax调用它
如果我创建了一个新操作,那么我必须创建一个新视图来更改以前选择的值。当我需要级联下拉列表时,我将使用jQuery$.load并呈现PartialView。使用该技术的一个示例是局部视图应该包含什么?第二个下拉列表是根据第一个下拉列表中选择的if填充的?是的,就是这样。您可以使用$.load将数据传递给控制器,例如用户ID或其他任何内容,并根据部分视图中的选择返回正确的选择。