2013-06-19 121 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