如何加载独立于site.master的视图?

时间:2010-01-11 16:09:39

标签: c# jquery asp.net-mvc asp.net-ajax

我正在准备一个我在ASP.Net MVC中编写的应用程序,用于处理一些轻量级的Ajax-y。基本上,我希望用户能够在不重新加载的情况下访问页面的不同部分。

为此,我希望能够重新加载页面正文。

我的网站主人分为头部和脚部。我希望能够使用类似$(“body”)。load(whateverlink)来刷新正文,但在我的情况下这样做会导致网站被渲染到正文中。

我怎样才能成功完成这项工作?

编辑:该页面由视图组成,而不是视图。从理论上讲,我可以将我的所有页面转换为部分页面,但如果可能的话,我正在寻找解决方法。 感谢

2 个答案:

答案 0 :(得分:2)

您可以让控制器返回部分视图,使用JQuery执行请求并使用您的页面内容更新div:

JQuery的:

function navigate(url){
  $.ajax({
    url: "/Home/Index",
    cache: false,
    success: function(html){
       $("#content").html(html);
      }
   });
}

控制器:

public class HomeController : Controller
{    
    public void Index()
    {
       return this.PartialView();
    }
}

答案 1 :(得分:0)

BrightMix上有一个有用的article可能有所帮助。它基本上呈现一个字符串的部分,然后您可以作为ContentResult的一部分返回。