如何将ASP.NET MVC中特定视图的Razor页面隐藏渲染?
- 内容介绍
- 文章标签
- 相关推荐
本文共计339个文字,预计阅读时间需要2分钟。
在我的MVC应用程序中,我创建了一个页面脚本,它像这样嵌入了一个div:
@Html.Action(Menu, Site) @RenderBody()
在我的mvc应用程序中,我已经制作了一个页脚并像这样嵌入它<div class="off-canvas-wrap" data-offcanvas> <div class="inner-wrap"> @Html.Action("Menu", "Site") <aside class="main-section"> @RenderBody() </aside> @RenderPage("~/Views/Shared/DisplayTemplates/_footer.cshtml") </div> </div>
这段代码位于我的_layout.cshtml文件中,我在这里要做的是隐藏某个页面上的页脚.甚至可以隐藏特定页面上的页脚?
期待着提出建议.
由于您的条件将在正在呈现的页面中而不是布局中,因此您必须保留一些可在页面加载后调用的全局函数.就像是
window.myfunction =function() { if (myConditionInJavaScript) { $("#myfooter").hide(); } }
并在您的子页面中调用此函数.通过window.myfunction();
您也可以使用Viewbag,但是在渲染或更新时,您需要在每个视图中设置ViewBag的值.
如果您只有一个必须隐藏的部分,根据我的最有效方式将保持两个单独的布局.因为无论您在每个页面加载时选择哪种方式,都会触发条件,这可能会导致性能下降.
本文共计339个文字,预计阅读时间需要2分钟。
在我的MVC应用程序中,我创建了一个页面脚本,它像这样嵌入了一个div:
@Html.Action(Menu, Site) @RenderBody()
在我的mvc应用程序中,我已经制作了一个页脚并像这样嵌入它<div class="off-canvas-wrap" data-offcanvas> <div class="inner-wrap"> @Html.Action("Menu", "Site") <aside class="main-section"> @RenderBody() </aside> @RenderPage("~/Views/Shared/DisplayTemplates/_footer.cshtml") </div> </div>
这段代码位于我的_layout.cshtml文件中,我在这里要做的是隐藏某个页面上的页脚.甚至可以隐藏特定页面上的页脚?
期待着提出建议.
由于您的条件将在正在呈现的页面中而不是布局中,因此您必须保留一些可在页面加载后调用的全局函数.就像是
window.myfunction =function() { if (myConditionInJavaScript) { $("#myfooter").hide(); } }
并在您的子页面中调用此函数.通过window.myfunction();
您也可以使用Viewbag,但是在渲染或更新时,您需要在每个视图中设置ViewBag的值.
如果您只有一个必须隐藏的部分,根据我的最有效方式将保持两个单独的布局.因为无论您在每个页面加载时选择哪种方式,都会触发条件,这可能会导致性能下降.

