2013-11-26 15 views
0

我在我的網站中有許多不同邏輯的視圖。我想根據加載的視圖更改頁面標題。我現在正在通過JavaScript在負載頁面中找到一個元素,然後:document.title = $("#current-loaded-element")[0].innerHTML給我一個關於如何在ASP.NET MVC中設置頁面標題的建議

頁面標題始終加載到當前頁面中,但它也隨同傳遞給當前視圖的對象一起提供。哪一個更好:通過javascript或設置@ Model.PropertyName

+0

其MVC框架的版本使用? – Miller

+0

我正在使用的版本是MVC 4 – mathinvalidnik

+0

@ ViewBag.Title會這樣做。 –

回答

2

爲什麼不直接在ASP.NET MVC中設置標題通過ViewBag.Title

我認爲這將是更好的方式來做到這一點,因爲您的網站將爲關閉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"; 
} 
相關問題