2011-01-20 175 views
1

如何找到jquery中的下一個XX元素?我想要實現的是,當有人點擊其中一個「event_details_arrow」類時,下一個「event_detail」類將顯示/隱藏。jquery顯示/隱藏元素

這是我的代碼,但目前顯示/隱藏所有event_detail類,只要我點擊任何「event_details_arrow」。

$(".event_details_arrow").bind("click", function() { 
     $(".event_detail").slideToggle(); 
    }); 
       <tr> 
        <td>yyy</td> 
        <td class="event_details_arrow"><span></span></td> 
        <td class="lastcol"><a href=""><span>Register</span></a></td> 
       </tr> 
       <tr class="event_detail"> 
        <td colspan="3">text</td> 
       </tr> 
        <tr> 
        <td>yyy</td> 
        <td class="event_details_arrow"><span></span></td> 
        <td class="lastcol"><a href=""><span>Register</span></a></td> 
       </tr> 
       <tr class="event_detail"> 
        <td colspan="3">text</td> 
       </tr> 
       <tr> 
        <td>yyy</td> 
        <td class="event_details_arrow"><span></span></td> 
        <td class="lastcol"><a href=""><span>Register</span></a></td> 
       </tr> 
       <tr class="event_detail"> 
        <td colspan="3">text</td> 
       </tr> 

感謝

回答

2

如果您肯定有一個家長,你可以使用類似:

$(".event_details_arrow").bind("click", function() { 
    $(this).parent().next().slideToggle(); 
}); 
0
$(".event_details_arrow").bind("click", function() { 
      $(this).next(".event_detail").slideToggle(); 
     }); 
// or 
    $(".event_details_arrow").bind("click", function() { 
      $(this).closest(".event_detail").slideToggle(); 
     }); 

吧?

+0

這些都不似乎工作... – user441365 2011-01-20 09:48:37

+1

正確的,這是行不通的,因爲接下來有從父母那裏找到。下一個箭頭是`.lastCol` – Marnix 2011-01-20 09:49:30

0
 $(".event_details_arrow").bind("click", function() { 
      $(this).closest(".event_details_arrow").slideToggle(); 
     });