【问题标题】:How do I call detail view using mvc 4 web api project如何使用 mvc 4 web api 项目调用详细视图
【发布时间】:2014-01-23 01:39:38
【问题描述】:

我正在开发 mvc 4 web api 项目

<a class="hover-wrap fancybox" href="Groups/Detail">
Details</a>

所以对于上面我尝试了

<a class="hover-wrap fancybox" onclick="getDetails('${Id}')">
    Details</a>

function getDetails(id) {
        $.getJSON(
                "api/groupvalues/Details" + id,
                function (data) {
               //some code
}

在控制器中和普通的ActionResultGet在web api项目中一样吗?

请清除

    public ActionResult Detail(Guid Id)
            {
//some code               
 return View("Group",model);
            }

public string Get(int id)
        {
            return "value";
        }

想要在详细信息页面上呈现数据

【问题讨论】:

  • 您希望它重定向到详细信息页面还是填充页面上的部分视图?
  • @MattBodily 想重定向到detail.cshtml,因为我在该页面上显示了所有详细信息。

标签: jquery asp.net-mvc json asp.net-mvc-4 asp.net-web-api


【解决方案1】:

如果您只想要一个可以重定向的链接,您可以像这样构建链接

@Html.ActionLink("Detail", "ControllerName", new { id = Model.Id })

它将传递给视图的 id 传递给 details 方法。

编辑:

如果你想显示被点击项目的详细信息,你必须使用 jquery

$('.clickedItem').on('click', function(){
    window.location = '@Url.Action("Detail", "ControllerName", new { id = "----" })'.replace("----", $(this).id());
});

【讨论】:

  • 同意,但是我的function getDetails(id) { $.getJSON( 应该是什么,它与我在上面的问题中显示的一样吗?请指导 那么JSON调用有什么用:(
  • 根据我的经验,json 调用用于操作您所在的页面。获取部分视图、验证表单等。如果您只是重定向,则不需要 json 调用。
  • 好的,但我没有任何 Model 。相反,我想发送当前点击的 ID 作为输入?
  • 我喜欢这个 href="@Url.Action("Detail", "Group", new { id = "AF0EAED2-C338-4880-9BF5-40473462E5B3" }) 现在唯一的问题是如何当我点击任何特定项目时获取 ID 值?
  • 将链接标签中href上的url替换为“#”,jquery会为你处理。将要发送到详细信息页面的记录的 id 作为链接标签的 id。如果您的点击事件在那个标签上,我的脚本应该可以附加 id 并重定向到您想去的地方
猜你喜欢
  • 1970-01-01
  • 2018-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-24
  • 1970-01-01
  • 2013-09-11
  • 1970-01-01
相关资源
最近更新 更多