使视图成为局部视图

本文关键字:视图 局部 | 更新日期: 2023-09-27 17:58:43

我有一个名为drawGraph的视图,可以通过控制器访问;

@Html.ActionLink("DrawGraph", "drawGraph", new {id =item.data}) 

当我使用这个链接时,页面加载到一个新页面上(就像它一样),我想把它显示为链接所在页面的一部分,有什么简单的方法可以实现吗?

我的控制器是这样的;

   public ActionResult drawGraph(string data)
    {
         *Bunch of code
         return View(chart);
     }

使视图成为局部视图

是的,你可以,但你需要使用Ajax,幸运的是,ASP.NET MVC提供了一些很方便的方法,比如Ajax.ActionLink

@Ajax.ActionLink("DrawGraph", "drawGraph", new {id =item.data},  
                 new AjaxOptions
                            {
                                UpdateTargetId = "yourDiv",
                                InsertionMode = InsertionMode.Replace,
                            })
<div id="yourDiv"> </div>

然后,您需要使用PartialView:返回操作的部分视图

public ActionResult drawGraph(string data)
{
    //Bunch of code    
    return PartialView(chart);
}

您不应该忘记在布局/视图中包含jquery.unobtrusive-ajax.min.js,以便Ajax助手工作。