2012-08-29 127 views
2

經過漫長的搜索之後決定試試這裏。我想爲我的表實現jQuery UI對話框。 在框中,我想顯示其他單元格,它有一個很長的描述符,通常只會搞亂我的表格佈局。所以在點擊按鈕後,您將獲得更多信息。jQuery UI對話框 - 多行

我有標準代碼:

$.fx.speeds._default = 1000; 
$(function() { 
    $(".dialog").dialog({ 
     autoOpen: false, 
     show: "blind", 
     hide: "explode" 
    }); 

    $(".opener").click(function() { 
     $(".dialog").dialog("open"); 
     return false; 
    }); 
}); 

和php:

echo "<td align=center>".$okres[$i]."</td>"; 
    echo "<td ><button class='opener'>Desription</button><div class='dialog' title='$training[$i]'>".$opis[$i]."</div></td>"; 
    echo "<td align=center>".$status[$i]."</td>"; 

它的工作,但它打開箱中的所有行。真的不知道如何使它只打開相關的盒子。

請幫忙。

回答

0

使用的動態ID爲每一行和發送的onclick有問題的行的id,然後顯示的內容描述,僅爲該行

0

你可以試試這個

$(function() { 
    $(".opener").click(function(e) { 
     e.preventDefault(); 
     var index=$(this).closest('tr').index(); 
     $($(".dialog")[index]).dialog("open"); 
    }); 
});​ 

DEMO

+0

嗨,仍然不能得到這個工作。有了這個,我可以提醒一個正確的ID警報($(this).closest('#report tr.a')。attr('id'));但是對話框顯示不正確的信息$(「.opener」).click(function(){ alert($(this).closest('#report tr.a')。attr('id')); var index = $(this).closest('#report tr.a')。attr('id'); $($(「。dialog」)[index])。dialog(「open」); }); – user1339164