2009-04-09 85 views
1

我有以下代碼:JQuery的addClass不工作

 function showAccessRequests_click() 
     { 

      var buttonValue = $("#showAccessRequests").val(); 
      if (buttonValue == "Show") 
      { 
      $(".hideAccessRequest").removeClass("hideAccessRequest"); 
      $("#showAccessRequests").val("Hide"); 
      } 
      else 
       { 
       $(".hideAccessRequest").addClass("hideAccessRequest"); 
       $("#showAccessRequests").val("Show"); 
       } 
     } 

此腳本將刪除一個類不錯,但它並不希望添加的類。你能看到這個代碼的任何問題嗎?

回答

6

當您向該元素添加hideAccessRequest類時,您將通過該類的存在來搜索它。如果要添加它,該類將不會被應用,因此您將不匹配任何元素。

+0

哎呀我的壞...應該已經看到了:P – Draco 2009-04-09 12:15:21

1

$(".hideAccessRequest")不存在。我想你需要使用id。你可能想看看toggleClass

+0

+1以及發現:) – Draco 2009-04-09 12:16:35

0

你需要一個你想要切換的類的標識符ex:「accessRequest」...試試這個。

 function showAccessRequests_click() 
     { 

      var buttonValue = $("#showAccessRequests").val(); 
      if (buttonValue == "Show") 
      { 
      $(".accessRequest").removeClass("hideAccessRequest"); 
      $("#showAccessRequests").val("Hide"); 
      } 
      else 
       { 
       $(".accessRequest").addClass("hideAccessRequest"); 
       $("#showAccessRequests").val("Show"); 
       } 
     } 

類是空間分隔的,所以如果你想他們默認是隱藏的...

<div class="accessRequest hideAccessRequest">...</div>