我使用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()以使用权限填充网格。 我的问题是第二个JavaScript请求不包含RoleID。 我可以在Request.UrlReferrer.ToString()中找到这个id但我需要解析它,从我的角度来看它是不正确的。 你能给我一些提示吗?我做对了吗?同一案件的最佳策略是什么?
答案 0 :(得分: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")
}