【问题标题】:Display a Partial only if user is on a specific page仅当用户在特定页面上时才显示部分
【发布时间】:2016-12-15 00:43:35
【问题描述】:

我有一个主布局页面,左侧有一个菜单栏,显示指向其他页面的链接。仅当用户位于该布局中的特定页面上时,我才尝试在左侧的该菜单栏下包含部分内容。

Here is another question that is asking for pretty much the same thing.

这个问题的问题是答案已经超过五年了,而且过时的 <% %> 语法在我的网站上不起作用。

有没有办法在仍然使用常规 @Html.Partial 语法的同时做同样的事情?

【问题讨论】:

标签: html asp.net-mvc razor


【解决方案1】:

在您的页面布局中,您希望在其中包含侧边栏:

<div id="header">
</div>

@RenderSection("Sidebar", false)

<div id="content">
    @RenderBody()
</div>

<div id="footer">
</div>

false 表示它不是必需的部分,所以不需要的页面不需要包含它。

现在要显示部分,只需将其添加到需要显示的页面底部,相同布局内的其他页面将不会显示此部分:

<h2>This is a page</h2>

@section Sidebar {
   <div id="sidebar">
       your sidebar....
   </div>
}

您的完整 html 将通过侧边栏显示如下内容:

<div id="header">
</div>

<div id="sidebar">
    your sidebar....
</div>

<div id="content">
    <h2>This is a page</h2>
</div>

<div id="footer">
</div>

其他页面将是:

<div id="header">
</div>

<div id="content">
    <h2>This is another page</h2>
</div>

<div id="footer">
</div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-17
    • 1970-01-01
    • 1970-01-01
    • 2019-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多