【问题标题】:Give me an advice for how to set a page title in ASP.NET MVC给我一个关于如何在 ASP.NET MVC 中设置页面标题的建议
【发布时间】:2013-11-26 09:43:24
【问题描述】:

我的站点中有许多具有不同逻辑的视图。我想根据加载的视图更改页面标题。我现在这样做的方式是通过 JavaScript 在加载的页面中找到一个元素,然后:document.title = $("#current-loaded-element")[0].innerHTML

页面标题总是加载在当前页面中,但它也带有传递给当前视图的对象。哪个更好:通过 javascript 或 @Model.PropertyName

设置

【问题讨论】:

  • 使用的是哪个版本的mvc框架?
  • 我使用的版本是 MVC 4
  • @ViewBag.Title 可以。

标签: jquery asp.net asp.net-mvc razor title


【解决方案1】:

为什么不通过ViewBag.Title保留默认方式在ASP.NET MVC中设置标题?

我认为这样做会更好,因为您的网站将以同样的方式为关闭 javascript 的客户和搜索引擎机器人工作。

只要看看默认的 ASP.NET 项目,你就会在 Layout.cshtml 上看到:

<title>@ViewBag.Title</title>

然后要更改它,您只需为特定页面上的 ViewBag.Title 分配所需的值,如下所示:

@{
   ViewBag.Title = "This is home page";
}

【讨论】:

    【解决方案2】:

    我将按如下方式使用 ViewBag:

    将此添加到您的 _layout.cshtml

    <title>@ViewBag.Title</title>
    

    然后将其添加到您的视图中:

    @{
         ViewBag.Title = "Title";
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-04
      • 1970-01-01
      • 2011-01-18
      • 2020-09-25
      • 1970-01-01
      相关资源
      最近更新 更多