jquery - 在 Razor 布局中刷新整个站点,呈现一个 ASP.NET 视图

  显示原文与译文双语对照的内容
0 0

我使用 ASP.NET MVC项目,使用了在 _layout.cshtml 中构建的Razor,它带有带有 header 和footer的经典两列布局。 这个想法是在布局的右栏显示我的应用程序视图,并在不复制代码的情况下对整个站点进行一致的查找。

问题是每次调用视图并在布局右列呈现is内容时,整个布局都会刷新。 是正常行为?

是否在这个版本的Razor 概念中只刷新渲染的视图内容,而不是整个站点,并使用 mecanism 。

谢谢

Etienne

时间:原作者:3个回答

0 0

如果你想要 switch的内容 dinamically,必须通过ajax加载数据,然后替换站点的右列。 =P

我有一些项目使用这个'鏂规碜'。 我将视图呈现为部分视图( 在控制器中),然后获取html并放置我想要的位置。

原作者:
0 0

MVC有一个内置的ajax机制,你可以使用:

http://msdn.microsoft.com/en-us/library/dd505086(v=vs.108).aspx

我的经验是,只对非常简单的事情有用;我通常只使用 $.post().

原作者:
0 0

可以使用iframe而不是 @RenderBody(),而调用页面 @{ 布局= 空;}

 <ul>
 <li class="LoadContent" data-url="http://api.jquery.com/not-selector/">Jquery-not-selector</li>
 <li class="LoadContent" data-url="http://api.jquery.com/contents/">Jquery-contents</li>
 </ul>
 <iframe src="" width="80%" height="600" id='frameDemo'></iframe> ​
 $(document).ready(function () {
 $('.LoadContent').click(function () {
 $('#frameDemo').attr('src', $(this).data('url'));
 });
 });​

对于演示

原作者:
...