2011-11-05 52 views
0

我使用jquery动态地向页面添加元素。我添加的元素来自数据库,每个检索到的对象应该用ui手风琴包装。在动态环境中的jquery ui

手风琴在页面上没有动态添加的元素正常工作,但随后所有添加的手风琴似乎都不起手风琴的作用。

问题:

如何确保所有动态添加的手风琴分配手风琴行为?

任何帮助表示赞赏家伙...

编辑:

// jQuery的的的document.ready功能:

$('#accordion').accordion(); 

// PHP动态地增加了包裹在手风琴的对象页码:

// -=> Container for activities: 
echo' 
<div id="con_activities_'.$project_id.'" class="float" style="width: 100%; height: auto; background-color: transparent; ">  

<div id="accordion"> 
'; 

while( $activities_array = mysql_fetch_array($activities) ){ 
$activity_id    = $activities_array['id']; 
$activity_parent_id  = $activities_array['parent_id']; 
$activity_created  = $activities_array['created']; 
$activity_title   = $activities_array['title']; 
$activity_desc   = $activities_array['desc']; 

echo' 
<h3><a href="#">'.$activity_title.'</a></h3> 
<div>'.$activity_desc.'</div> 
'; 
} 

// -=> Close container for activities: 
echo' 
<div class="clear"></div> 
</div> 
'; 
+1

您需要初始化它们(.accorion())。如果你包含一些代码,我们可以证明你是一个“打开它们”的好地方。除非你的意思是你正在为现有的手风琴增加额外的面板,在这种情况下,你可能需要以不同的方式添加内容,然后你现在正在做。 – Sinetheta

+0

也许包括输出HTML,因为该代码将工作得很好,假设你已经有了你的PHP – Sinetheta

回答

1

除了您从未关闭过的事实离子(所以输出是不是你所期望的),该代码将工作得很好。 jsFiddle