2013-08-02 175 views
3

我有一張有多行的表格。在每一行中都有一個Show Details按鈕和一個Hide Details按鈕。點擊顯示詳細信息我希望隱藏詳細信息按鈕僅顯示特定行。我認爲.closest()函數可以工作,但還沒有。

下面是HTML

<table> 
    <tr id="1"> 
     <td><button class='view'>View Details</button><button class='hide' style='display:none;'>Hide Details</button></td> 
    </tr> 

    <tr id="2"> 
     <td><button class='view'>View Details</button><button class='hide' style='display:none;'>Hide Details</button></td> 
    </tr> 
</table> 

這裏是jQuery的

$(".view").click(function() { 
    $("#patient").show(""); 
    $(this).hide(); 
    $(this).closest(".hide").show(); 
}); 

回答

2

dom準備好後,你是否綁定?試試這個:

$(function(){ 
    $(".view").click(function() { 
     $("#patient").show(""); 
     $(this).hide().next().show(); 
    }); 
}); 
8

.closest着眼於當前元素,只有其父母。你必須要做到這一點,如:

$(this).parent().find('.hide'); 

$(this).siblings('.hide');