Javascript MVC AJAX ActionLink将模型数据发布回控制器

Javascript MVC AJAX ActionLink将模型数据发布回控制器,javascript,asp.net-mvc,asp.net-mvc-4,actionlink,Javascript,Asp.net Mvc,Asp.net Mvc 4,Actionlink,我想在同一页面上呈现部分视图,所以我使用了ajax.actionlink,但问题在于下拉列表和文本框选择。我需要将表单数据发送回控制器以填充webgrid。所有模型值都将变为null 因此,为了让模型数据返回到控制器,我尝试使用ajax.beginform,但这是在另一个页面中呈现部分视图,而不是更新div 你能帮我解决这个问题的最好办法是什么吗 下面是我的代码: @Ajax.ActionLink("Add Role", "AddRoleList", "RegionalManagement",

我想在同一页面上呈现部分视图,所以我使用了
ajax.actionlink
,但问题在于下拉列表和文本框选择。我需要将表单数据发送回控制器以填充webgrid。所有模型值都将变为null

因此,为了让模型数据返回到控制器,我尝试使用ajax.beginform,但这是在另一个页面中呈现部分视图,而不是更新div

你能帮我解决这个问题的最好办法是什么吗

下面是我的代码:

@Ajax.ActionLink("Add Role", "AddRoleList", "RegionalManagement", new {role=Model.TempUser.Roles,region=Model.TempUser.RegionID,fieldoffice=Model.TempUser.Fieldoffice}, new AjaxOptions
{
  HttpMethod = "POST",
  UpdateTargetId = "gridContent",
  InsertionMode = InsertionMode.Replace,
})
控制器代码:

[HttpPost]
public PartialViewResult AddRoleList(string roles,int region,string fieldoffice)
{
  //Get List based on the filter criteria
  UserModel model = new UserModel();
  model.TempUserList = new List<TempUser>();
  model.TempUserList.Add(new TempUser()
  {
    Roles = roles,
    RegAbbr=region,
    Fieldoffice=fieldoffice
  });
  return PartialView("DisplayTemplates/_AddUserRolesGrid", model);
}
[HttpPost]
公共PartialViewResult AddRoleList(字符串角色、int区域、字符串字段办公室)
{
//根据筛选条件获取列表
UserModel model=新的UserModel();
model.TempUserList=新列表();
model.TempUserList.Add(新的TempUser()
{
角色=角色,
RegAbbr=区域,
外地办事处
});
返回PartialView(“DisplayTemplates/_AddUserRolesGrid”,模型);
}

如果它使用Ajax.BeginForm在另一个页面上呈现部分视图,那么您没有包含相关的jquery文件。(可能缺少
jquery.unobtrusive ajax.js
)我在默认布局文件中引用了该文件,然后您可能复制了一些其他jquery文件,或者它们的顺序不正确。