0

嗨,我有一个名为“应用程序”的视图,当用户单击该视图时,它应该转到信息页面并根据 ID 显示应用程序表中存在的记录。为此,我在信息控制器上写道:

public ActionResult Info(short id)
    {

        var inf = db.Apps.Where(x => x.ID == id).FirstOrDefault();
        return View(inf);

现在我需要在应用程序页面中传递这个 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 传递给上面的代码吗?

4

1 回答 1

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 })
于 2013-09-08T16:04:51.460 回答