2016-02-19 50 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