MVC下拉列表选择填充列表框(两个选择)

本文关键字:选择 两个 下拉列表 填充 列表 MVC | 更新日期: 2023-09-27 18:26:33

我有一个MVC视图,它有一个带有IEnumerable<SelectListItem>的模型,该模型填充了一个@Html.DropDownList(Form select)。我想编写代码,这样当下拉列表中的一个项目被选中时,它将用服务器中的值填充另一个列表框(也是一个表单选择)。

我应该使用AJAX来获得一个单独的部分视图,其中包含每次点击下拉列表时的值的列表框吗?或者我应该在加载时生成一个列表框,然后使用WebAPI只获取每次单击的数据?

这似乎是一个简单的问题,但我正在努力找出我的模型、观点和最佳方法。

MVC下拉列表选择填充列表框(两个选择)

  1. 填充你的下拉列表
  2. 创建一个空列表框
  3. 有一个javascript函数,它在下拉列表更改事件上触发,并对返回json结果的操作方法进行ajax调用
  4. 成功后将json数据绑定到列表框中

我更喜欢Ajax,因为其他下拉列表依赖于您的第一个下拉列表。

在你的控制器中,只需要一个JsonResult,类似这样的东西:

public JSonResult getDropdownItems(your parameters)
{
    //do some iteration in your context
    return Json( /*list or iEnumerable*/, Json.AllowGet);
}