2012-12-19 174 views
-1

ASP.Net,2.0 VS2005,NET 2.0的jQuery 1.8.3,jQuery UI的1.9.2jQuery的可折叠面板

我有两个面板(更会以后)我的形式,可以是打开或关闭上在用户请求。

我正在使用jQuery'.slideToggle'方法。

这是我的标记

<div class="trigger0">Collapsible Header 1 - Click to toggle</div> 
      <div class="panel0"> 
       content 1 
      </div> 
      <div class="trigger1">Collapsible Header 2 - Click to toggle</div> 
      <div class="panel1"> 
       content 2 
      </div> 

下正常工作

$(document).ready(function() { 
     $(".trigger0").click(function(){ 
      $(".panel0").slideToggle("medium"); 
     }); 
     $(".trigger1").click(function() { 
      $('.panel1').slideToggle("medium"); 
     }); 
    });  

但这并不

$(document).ready(function() { 
     for (var vReportSectionCount = 0; vReportSectionCount < 2; vReportSectionCount++) 
     { 
      $(".trigger" + vReportSectionCount).click(function(){ 
       $(".panel" + vReportSectionCount).slideToggle("medium"); 
      }); 
     } 
    }); 

因为我不还不知道有多少板最终将设i不想为每个面板写一个新行。有人可以向我解释为什么并提出更好的解决方案吗?

回答

5

这可能是你要找的东西吗?这可以让你的名字的类为类,而不是ID的

HTML

<div class="trigger">Collapsible Header 1 - Click to toggle</div> 
<div class="panel"> 
    content 1 
</div> 

<div class="trigger">Collapsible Header 2 - Click to toggle</div> 
<div class="panel"> 
    content 2 
</div> 

的Javascript

$(document).ready(function() { 
    $(".trigger").click(function(){ 
     $(this).next(".panel").slideToggle("medium"); 
    }); 
}); 

这里你可以看到一个演示:http://jsfiddle.net/LkTf8/1/

+0

T hank,这是我第一次使用jQuery。很多学习。 – AdamB