我是一名學生,對於ASP.NET MVC來說相當新穎,我來自ASP.NET Web Form。 (習慣了)ASP.NET MVC 5 - 獲取當前視圖的名稱(Razor .cshtml端)
我有一個列表:
<ul class="sidebar bg-grayDark">
<li class="active">
<a href="@Url.Action("Index", "Home")">
<span class="mif-home icon"></span>
<span class="title">Home</span>
</a>
</li>
<li class="bg-hover-black">
<a href="@Url.Action("Index", "Product")">
<span class="mif-shop icon"></span>
<span class="title">Products</span>
<span class="counter">14</span>
</a>
</li>
<li class="bg-hover-black">
<a href="@Url.Action("Index", "Category")">
<span class="mif-flow-cascade icon"></span>
<span class="title">Categories</span>
<span class="counter">9</span>
</a>
</li>
<li class="bg-hover-black">
<a href="@Url.Action("Index", "User")">
<span class="mif-users icon"></span>
<span class="title">Users</span>
<span class="counter">1</span>
</a>
</li>
</ul>
我的目標: 通過其觀點被渲染,我要添加「活動」的已被點擊。 例如:我點擊「類別」,然後Home丟失了他的活動課程,並且類別被添加到他的課程中。 (和「bg-hover-black」)
我以爲我可以通過檢查實際呈現的視圖來做到這一點,但我不知道該怎麼做。 (我不知道如何檢查呈現實際的觀點,但使用剃刀來檢查的條件是好的)
我用JavaScript第一次嘗試:
$(function() {
$('.sidebar').on('click', 'li', function() {
if (!$(this).hasClass('active')) {
$('.sidebar li').removeClass('active');
$(this).addClass('active');
}
})
})
但它不起作用,因爲在頁面加載時,該html被重新渲染爲主動部分的「活動」。 (如果我刪除主頁的「活動」,則除點擊和頁面加載之外,沒有任何內容會被激活)。
你有什麼解決方法嗎?我在網上搜索了很多,但沒有找到任何幫助。
對不起,有任何英文錯誤,我還在學習它:)。
謝謝,
Hellcat8。
該帖子的開頭並未顯示..這裏是: 「大家好, 我是一名學生,對ASP.NET MVC [...]頗爲新穎」 – Hellcat8