将父母的页面标题标记用作所有孩子的标题标记

时间:2015-07-24 20:46:08

标签: javascript html .net razor

我正在处理一个大型网站项目,我们有一个默认布局,其中包含一个<title> My Title </title>标记,用于所有其他网页。

如果我到达一个特定页面,我希望它保留在哪个特定页面,我希望它可以更改为当前页面的<title> Other Title - My Title </title>和该页面的所有子项,而无需手动编辑每个子页面?

提前谢谢!

修改

我有一个布局页面,我想覆盖某个页面的子集(它们都是特定页面的子项)

1 个答案:

答案 0 :(得分:0)

我已经有一段时间了,因为我在razor做过任何事情,但这可能有用。在您的主布局文件中,例如Index.cshtml您可以添加@helper来简化格式设置,例如:

@helper formatTitle(string subtitle) {
    @if (!string.IsNullOrEmpty(subtitle)) {
        @:<title>subtitle - My Title</title>
    } else {
        @:<title>My Title</title>
    }
}

<html>
    <head>
        @formatTitle(Model.Subtitle)
    ...
    </head>
...
</html>

然后,只需确保为每个页面设置Model.Subtitle值,以便在网站标题前显示字幕。