私は_Layout.cshtmlにこのメニューを持っています:
<td class="MenuStructure">
<ul id="menu">
<li>@Html.ActionLink("First Page", "Page1Action", "Main")</li>
<li>@Html.ActionLink("Second Page", "Page2Action", "Main")</li>
<li>@Html.ActionLink("Third Page", "Page3Action", "Second")</li>
</ul>
</td>
アクションリンクの1つがクリックされたときに、それを含む<li>のクラスを「selected」に設定し、他の<li>要素のクラスを「」に設定したいと思います。
これは動作します:
<script type="text/javascript">
$(document).ready(function () {
var selMenu = '@ViewBag.SelectedMenu';
if (selMenu == "page1") {
$("#page1").attr('class', 'selected');
$("#page2").attr('class', '');
$("#page3").attr('class', '');
}
if (selMenu == "page2") {
$("#page1").attr('class', '');
$("#page2").attr('class', 'selected');
$("#page3").attr('class', '');
}
});
</script>
しかし、それはひどく醜いです。誰かが私にこれを行うためのよりエレガントな方法を教えてもらえますか?