在我的MVC应用程序中(使用Razor)我希望每次点击链接时都要避免母版页刷新。
我的母版页有这样的结构:
<html>
....
<div id="main">
@RenderBody()
</div>
...
</html>
链接按钮可以在母版页和内容页中。如何构建我的页面?
答案 0 :(得分:1)
每次使用标准调用检索视图时,都会刷新主视图。
如果您想避免这种情况,您应该使用PartialViews创建所有视图,并进行AJAX调用。因此,当您单击链接时,将执行ajax调用,将检索局部视图,并使用局部视图的内容填充DOM元素(通常为div)。
手动执行此操作是可能的,但您将不得不面对很多问题。如果你真的想做SPA(单页面应用程序),可以开始寻找AngularJs,Durandal,Backbone或任何可以帮助你的Javascript库! (即看看http://www.codeproject.com/Articles/709766/Tutorial-for-Building-SPA-using-AngularJS)。
答案 1 :(得分:0)
最后,我们决定使用旧的和弃用的解决方案,但在我的特定情况下(屏幕尺寸固定,没有移动设备,仅支持ff)它的效果非常好。我使用iframe html标签:创建一个自定义起始网页,其中包含3个不同的iframe,它们可以调用自己的函数控制器。 我不推荐它,但可能对某些人有用,如果发生紧急情况,就像我的那样。