2016-02-19 48 views
0

我使用的引导选项卡在我看来jQuery的事件火引导标签

@Html.ValidationSummary(true) 
     <ul id="MyTabs" class="nav nav-tabs nav-justified"> 
      <li class="active"><a data-toggle="tab" href="#details" id="TabDetailsLink">Personal 
       Details</a></li> 
      <li><a data-toggle="tab" href="#tab1" id="Tab1">T1</a></li> 
      <li><a data-toggle="tab" href="#tab2" id="Tab2">T2</a></li> 

     </ul> 

and i use jquery for catch the event 
$(".MyTabs li").click(function (e) { 
    alert(2); 
}); 

我的期望是,每当我更改选项卡,以该警报。但事件并未被解雇。 Mine是一个ASP.NET MVC 4 web API应用程序。

回答

0

你的jQuery选择器是错误的! MyTabs是Id。所以用它#前缀

这应该工作。

$("#MyTabs li").click(function (e) { 
    e.prevelitDefault(); 
    alert(2); 
}); 

或者您可以使用您现有的jQuery选择器,如果您将此类添加到yuur ul元素。

<ul id="MyTabs" class="MyTabs nav nav-tabs nav-justified"> 

当使用ID作为您的jQuery选择,使用#前缀(例如:$("#myElementUniqueID")

当使用CSS类作为您的jQuery选择,使用.前缀(例如:$(".myCssClss")

+0

你是对的我正在使用类选择器而不是id选择器。它的工作,如果我改变# – jubi

+0

是的..感谢您的详细解释。这是使用ID选择器或类选择器的最佳方式? – jubi

+0

如果您只定位一个元素,请使用Id选择器(** Id应该是唯一**)如果您有多个项目,请使用css类。 (例如:如果你想将一些常见行为附加到一堆标签) – Shyju