如何使用jquery获取当前控制器名称?

时间:2014-06-08 07:43:38

标签: jquery asp.net-mvc-4

我想用jquery激活MVC中的菜单项。

  <ul id="menunav" class="nav nav-pills">
   <li>
     <a href="/reportgenerator/index">Reports</a>
   </li>
   <li>
    <a href="/account/roles">User Groups</a>
   </li>
   <li>
    <a href="/projectstatedefinition/index">Projects</a>
   </li>
  </ul>

我使用@Html.Navigation()创建了此菜单。

我想在jquery中获取当前控制器,以便将活动类添加到所选菜单。

highlightActiveMenuItem = function () {
var currentAction = ???;
var currentController = ???;

};

3 个答案:

答案 0 :(得分:1)

highlightActiveMenuItem = function () {
    var currentAction = '@ViewContext.RouteData.Values["action"].ToString()';
    var currentController = '@ViewContext.RouteData.Values["controller"].ToString()';
};

答案 1 :(得分:1)

我用这个

$(document).ready(function () {
 highlightActiveMenuItem();
});

highlightActiveMenuItem = function () {
  var url = window.location.pathname;
   $('.menu a[href="' + url + '"]').addClass('active_menu_item');
};

答案 2 :(得分:0)

试试这个

  <script type="text/javascript">
function currntcontrol(){
     alert('@HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString()');
}
    </script>
    <button onclick="currntcontrol()"></button>
相关问题