MVC DropDownList选择填充ListBox(两个选择)

时间:2014-10-14 16:49:36

标签: c# asp.net asp.net-mvc asp.net-mvc-4 listbox

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

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

这似乎是一个简单的问题,但我试图弄清楚我的模型和观点以及最佳方法。

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

我更愿意使用Ajax,因为其他下拉列表取决于您的第一个下拉列表。

并且在您的控制器中,只需要一个JsonResult,就像这样:

public JSonResult getDropdownItems(your parameters)
{
    //do some iteration in your context

    return Json( /*list or iEnumerable*/, Json.AllowGet);
}