Php 引导:手风琴中的手风琴,显示动态内容

Php 引导:手风琴中的手风琴,显示动态内容,php,javascript,jquery,twitter-bootstrap,Php,Javascript,Jquery,Twitter Bootstrap,我很难让我的手风琴启动。内容都是动态生成的,我希望手风琴嵌套在顶级父手风琴中-以下是标记: ... foreach($xml->Continent as $continent) { echo "<div class='accordion-group'><div class='accordion-header'><a class='accordion-toggle' data-toggle='collapse'>".$continent['Name'

我很难让我的手风琴启动。内容都是动态生成的,我希望手风琴嵌套在顶级父手风琴中-以下是标记:

...
foreach($xml->Continent as $continent) {
   echo "<div class='accordion-group'><div class='accordion-header'><a class='accordion-toggle' data-toggle='collapse'>".$continent['Name']."</a><span>".$continent['Status']."</span></div>";
    foreach($continent->Country as $country) {
       echo "<div class='accordion-body collapse in'><div class='accordion-inner'><div class='accordion-group'><div class='accordion-header'><a class='accordion-toggle' data-toggle='collapse'>".$country['Name']."</a><span>".$country['Status']."</span></div>";
       foreach($country->City as $city) {
         echo "<div class='accordion-body collapse in'><div class='accordion-inner'>".$city['Name']."<span>".$city['Status']."</span></div></div>";
       }
       echo "</div></div></div>";
    }
    echo "</div>";
}
echo "</div>";
...
基本上。。大陆都应该在默认状态下塌陷。但一旦你点击并扩展一个大陆,它将列出其中的国家。这些国家也应该扩大到展示城市,并就此止步


我以前遇到过一个不同的方法,但它是非常脆弱的代码,并且很大程度上依赖于标记,如果我的内容是动态生成的,并且内容可能从1到多不等,我认为这不是一个好方法。我真的需要折叠功能才能工作,如果这意味着创建一个指定特定ID的脚本,那么它也可以工作——我只是想知道最好的方法是什么

好的。。。问题如下:

缺少数据父属性-例如,数据父属性=accordion2 缺少href属性-例如href=collapseOne 缺少id 属性-例如id=collapseOne 它可能不是100%完美,但[参见我的示例]请查看

补充说明: 确保“in”类仅包括在城市中,例如class='手风琴体塌陷in'。这会使这些节点始终展开。对于您希望最初折叠的大陆和国家/地区的节点,请排除“in”类。
确保你的标签是正确的。乍一看,我注意到一个回声;在你的房间之外。只是预感…啊,对不起。这是我的错,没有包括所有的代码。那部电影的开头是在大陆电影之前回音的好吧。。。没问题。请看下面我的答案。这很好,谢谢。但是,由于它是动态生成的内容,处理这些id的最佳方法是什么?对于每个手风琴组,它们必须是不同的。我知道我必须编写一个脚本才能给每个组一个唯一的id,但我正在努力从哪里开始。你可以这样命名你的id:collapse1而不是collapseOne。然后,在循环之前设置一个递增变量,如$i=1,并在循环中使用$i++递增。然后,在构造id字符串时使用数值变量,$collapse\u id=collapse.$i;因此,它的结构如下:$i=1;foreach$xml->constance as$constance{$collapse\u id=collapse.$i;echo;//等等……$i++}大陆和国家之间的问题呢。。一个大陆内可以有多个国家。因此,如果一个大陆的id为collapse1,那么它将给嵌套在其中的任何和所有国家一个collapse1的id。好的,简单的解决方法。我调整了输出,以便将国家/地区包含在一个具有id的可折叠div中。现在我只需要让递增的工作。。目前仅获取collapse1 ID。是的,您需要在所有循环中重复此过程。由于已分配$i,因此需要将变量名更改为$i以外的其他名称。e、 g.$j、$k等。