2013-06-19 41 views
1

我有一個問題,我無法解決,因爲我對JS或jQuery不夠了解。從一個foreach創建的不同元素的jQuery差異

我爲了說明一點什麼我有 http://jsfiddle.net/2TvAq/12/

取得了小提琴所以我有一個foreach這將創建一個爲每場比賽顯示比賽的表。 (小提琴只是我想要做的一個例子)

而且我還有一個鏈接「+ more infos」,它必須只顯示與點擊錦標賽的描述的div。

我不知道該怎麼做,如何讓一個比賽或另一個比賽有所不同。

而且,我把在div含量

<?php 
<div style="display:none" class="ContentInfos">'. $tournoi->getDescription() 
?> 

但是,該說明是HTML代碼,在數據庫中的文本,所以我有HTML作爲明文在我的div,如果你也知道的方式執行HTML標籤,而不是那將是巨大的,我唯一的解決辦法是這樣的:

<?php 
echo '<div style="display:none; text-align:left;" class="moreinfos"></div> 
<div style="display:none" class="ContentInfos">'. $tournoi->getDescription() .'</div>'?> 

而在腳本:

$('.moreinfos').html($('.ContentInfos').text()); 

我知道它很醜,但我無法想象任何其他方式來正確顯示它。

告訴我,如果我不夠清楚,我很難解釋它。
感謝您花時間幫助我!

回答

1

不知道這是你想要的..但​​是你可以用siblings()切換特定div只在(小提琴)

例如與小提琴

$('.clickMe').click(function(event) { 
    event.preventDefault(); 
    $(this).siblings('.content').toggle(); 
}); 

fiddle here

這將工作,如果你a clickmediv content是同一容器內

+0

謝謝你的回答,這就是我想要的,但是當我嘗試在我的代碼應用它,它不工作,但無論如何,這是我必須用這樣的方式感謝你,它幫我:) – MrPanda

+0

好吧,我沒有看到它必須在同一個容器,但我有我的div在不同的錶行,所以它不工作,我更新[小提琴在這裏](http:// jsfiddle達網絡/ 2TvAq/15 /)。我希望你仍然知道如何解決它! – MrPanda

+0

使用這個:$(this).parent()。next('。content')。toggle(); – skparwal

1

使用這一個:

$('.clickMe').click(function(event) { 
    event.preventDefault();   
    $(this).next('div').toggle(); 
}); 

我已經更新你撥弄。

example

+0

謝謝,我試圖讓它工作,但我不知道爲什麼它不。但無論如何,它幫助我如此惹你! – MrPanda

+0

嗯,它不工作,因爲它不是在真正的代碼中的同一個容器中:/ – MrPanda