Asp.net mvc 4 使用下拉列表选择绑定Gridview MVC 5

Asp.net mvc 4 使用下拉列表选择绑定Gridview MVC 5,asp.net-mvc-4,model-view-controller,Asp.net Mvc 4,Model View Controller,我有一个下拉列表(城市),选择它应该能够绑定MVC5中的网格视图 我可以绑定下拉列表和网格视图,但无法处理下拉列表的选择事件。我不知道如何处理这个问题,我不想使用Jquery。下面是我的代码 //下面是下拉列表代码 @using (Html.BeginForm("BindGridView", "FacebookConfig", FormMethod.Post, new { id = "Id" })) { @Html.DropDownList

我有一个下拉列表(城市),选择它应该能够绑定MVC5中的网格视图

我可以绑定下拉列表和网格视图,但无法处理下拉列表的选择事件。我不知道如何处理这个问题,我不想使用Jquery。下面是我的代码

//下面是下拉列表代码

@using (Html.BeginForm("BindGridView", "FacebookConfig", FormMethod.Post, new { id = "Id" })) { @Html.DropDownList("Cities") }
如果您想在更改事件下拉列表上执行操作,则必须使用javascript/jquery来处理元素事件。为了满足您的要求,您可以按照

  • 创建一个
    ,以保存要创建的带有要选择的id的新栅格视图
  • 创建生成栅格视图的局部视图
  • 在jquery/javascript中为更改事件下拉列表创建一个函数
  • 从函数调用使用ajax的操作方法
  • 创建一个动作方法,该方法将执行您想要执行的任何功能,并返回部分视图以及生成网格视图所需的模型
  • 最后,在ajax调用的成功方法上,将输出响应写入
    的内部html
  • 如果绝对不支持jquery或javascript,则执行回发操作,并从post方法中选定的下拉列表值获取网格视图的数据,并将其绑定到网格。注意这里的表单提交不会发生在下拉选择中,必须使用提交按钮。如果不为空,也显示基于网格的模型

    选择你可能采用的方法

    @if (Model != null) { foreach (var item in Model) { @Html.DisplayFor(modelItem => item.Keywords) @Html.ActionLink("Edit", "Edit", new { id = item.Id }) @Html.ActionLink("Delete", "Delete", new { id = item.Id })
      public ActionResult Index()
        {
            var cities = So.BL.City.GetCities();
    
            ViewBag.Cities = new SelectList(cities, "Id", "Name");
    
            return View();
        }
          [HttpPost]
        public ActionResult BindGridView(int id)
        {
            var filter = So.BL.FacebookFilter.SelectFBApprovalFilters(id);
            return View(filter);
        }