您好我有一个名为Apps的视图,当用户点击它时,应该转到信息页面并根据ID显示Apps表中的记录。为此我在Info controller上写道:
public ActionResult Info(short id)
{
var inf = db.Apps.Where(x => x.ID == id).FirstOrDefault();
return View(inf);
现在我需要在Apps页面中传递此ID。我知道如何使用html.actionlink。例如:
@Html.ActionLink("Info", "Info", new { id = item.ID })
但在我的情况下,我需要为应用程序页面中的此代码传递ID:
<div class="listPageCol" onclick="location.href='Info'">
在onlcick函数之后,我试图通过使用new来传递id但它不起作用。正如你所看到的,上面的代码重定向到Info页面但没有获取ID。那么有人能告诉我如何将id传递给上面的代码吗?
答案 0 :(得分:1)
您可以使用Url.Action
帮助程序生成正确的位置:
<div class="listPageCol" onclick="window.location.href='@Url.Action("Info", new { id = item.Id })';">
但恕我直言使用@ Html.ActionLink助手生成一个指向你的控制器动作而不依赖于任何javascript的锚点是语义上更正确的方法:
@Html.ActionLink("Info", "Info", new { id = item.ID })