0

我使用 c#、mvc、jqGrid 和 Trirand.Web.Mvc 我有两个页面,第一页上是带有角色的网格,第二个是带有权限的网格。取决于第一页上选择的角色我想将用户重定向到第二页(用于链接/{controller}/{action}/{id})并依赖于 {id} 填写第二个网格的权限。我实现了一些代码。这是默认方法,在这里我有来自 url 的正确 id

public ActionResult RightList(int id = 0)
{
  int roleID = id;
  var gridModel = new RightJQGridModel();
  RightJQGrid_SetUpGrid(gridModel.RightJQGrid);
  // Pass the custmomized grid model to the View
  return View(gridModel);
}

但稍后 cshtml 文件开始呈现,JavaScript 将第二个请求发送到 RightJqGrid_DataRequested() 方法以使用 Rights 填充网格。我的问题是第二个 JavaScript 请求不包含 RoleID。我可以在 Request.UrlReferrer.ToString() 中找到这个 id,但我需要解析它,从我的角度来看它是不正确的。你能给我一些建议吗?我做得对吗?相同情况下的最佳策略是什么?

4

1 回答 1

0

角色:

<script type="text/javascript"> function redirectToRights() 
{ 
    var id = $('#jqGridRoles').jqGrid('getGridParam', 'selrow'); 
    var _url = '@Url.Action("RightList", "Right", new { id = "_id" })';
    window.location.href = url.replace("_id", _id); 
} 
</script>
@using (Html.BeginForm(null, null, FormMethod.Get, 
new { 
    name = "frmRoleList", 
    id = "frmRoleList" })) { @Html.Trirand().JQGrid(Model.RoleJQGrid, "jqGridRoles") 
} 

权利:

@using (Html.BeginForm(null, null, FormMethod.Get, 
new { name = "frmRightList", id = "frmRightList" }))
{
  @Html.Trirand().JQGrid(Model.RightJQGrid, "jqGridRights")
}
于 2013-07-30T07:21:01.990 回答