2016-01-05 144 views
0

我很难用foreach声明和Bootstrap崩溃。每次我点击最后一个或第一个面板时,它总是打开一个不同的面板而不是它自己,并且折叠不同的面板而不是它自己。bootstrap在foreach中循环foresh循环

<?php 
    $x = 0; 
    foreach($infos as $info): 
?> 

<form action="../../Core/init.php" method="POST"> 

    <div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true"> 
     <div class="panel panel-default" role="tab" id="heading<?php echo $x; ?>"> 
     <div class="panel-heading" > 
      <h4 class="panel-title"> 
      <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapse<?php echo $x; ?>" aria-expanded="false" aria-controls="collapse<?php echo $x; ?>"> 

       <?php echo strtoupper($fname); ?> 

      </a> 
      </h4> 
     </div> 
     <div id="collapse<?php echo $x; ?>" class="panel-collapse <?php echo ($x == 0 ? 'collapse in' : 'collapse'); ?>" role="tabpanel" aria-labelledby="heading<?php echo $x; ?>"> 
      <div class="panel-body"> 

       <div class="form-group"> 
        <label class="control-label" for="inputWarning"> Name</label> 
        <input type="text" class="form-control" value="<?php echo $name; ?>" readonly> 
       </div> 

       <div class="form-group"> 
        <label class="control-label">Age</label> 
        <input type="text" class="form-control" value="<?php echo $age; ?>" readonly> 
       </div> 

       <div class="form-group"> 
        <label class="control-label"></label> 
        <textarea class="form-control" rows="6" id="textArea" name="message" maxlength="1000"></textarea> 

       </div> 

       <button class="btn btn-block btn-lg btn-danger" name="message" >Submit</button> 

      </div> 
     </div> 
     </div> 
    </div> 
</form> 

<?php $x++; endforeach;?> 

回答

1

以下行(和属于</div>)应该是你的foreach外循环,因为它是为您全方位手风琴包装,应该在你的$infos阵列添加为每个项目。

<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true"> 

这里是引导文档中的例子: http://getbootstrap.com/javascript/#collapse-example-accordion