【问题标题】:Creating Bootstrap Accordionin in a while loop在 while 循环中创建 Bootstrap Accordionin
【发布时间】:2021-02-04 07:59:10
【问题描述】:

我正在尝试创建一个动态内容字段,其中每个数据都在一个单独的手风琴中并且遇到了一些麻烦。

结果是第一个手风琴只能工作,即使我对每个手风琴都有不同的 id。

谁能帮我解决这个问题

                            while ($row = mysqli_fetch_assoc($sql_result))
                            { 
                                $i=1;
                        ?>
                        

<div class="container-fluid border">
                            <table width=100%>
                                <tr>
                                    <td><img src="/images/vehicles/<?php echo strtolower($row['vtype']); ?>.jpg" width="75" heigth="75" alt=""></td>
                                    <td align="center"><b><?php echo $row['vtype']; ?> A/C </b> - <?php echo $row['nos']; ?> Seater<br>
                                    <b>&#8377; <?php if($duration=='8hrs') { $basefare=$row['8hrs']; } elseif($duration=='10hrs') { $basefare=$row['10hrs']; } else { $basefare=$row['12hrs']; } $base=$basefare+($basefare*5/100); echo number_format($base,2,".",","); ?> </b></td>
                                    <td align="right"><a href="#" class="btn btn-primary">Book</a></td>
                                </tr>
                            </table>
                        </div>
                        <div id="accordionfare<?php echo $i; ?>">
                            <div class="card">
                                <div class="card-header" align="right">
                                    <a class="card-link" data-toggle="collapse" href="#collapsefare<?php echo $i; ?>">Fare Details</a>
                                </div>
                                <div id="collapsefare<?php echo $i; ?>" class="collapse" data-parent="#accordionfare<?php echo $i; ?>">
                                    <div class="card-body">
                                        <p align="center"><b>Fare Details: </b>Base Fare: &#8377; <?php echo number_format($basefare,2,".",","); ?> | GST @ 5%: &#8377; <?php echo number_format(round($base*5/100),2,".",","); ?> | Extra Hr Fare: &#8377; <?php echo number_format($row['extrahr'],2,".",","); ?>/Hr | Extra Km Fare: &#8377; <?php echo number_format($row['extrakm'],2,".",","); ?>/Km</p>
                                        <?php $i++; ?>
                                    </div>
                                </div>
                            </div>
                        </div><br>
                        <?php
                            }
                        ?>

【问题讨论】:

  • 我在您的代码中没有看到循环。请向我们展示所有相关代码。
  • “只有第一部手风琴有效”是什么意思?第一个手风琴打开和关闭?只创建了一个手风琴元素?您的控制台日志中有任何错误吗?

标签: php bootstrap-4


【解决方案1】:

我已经测试了替换数据的代码,它按预期工作。检查您的 PHP 错误日志,以防有可能以某种方式中断循环的错误。 Here 是一个沙箱,您可以在其中执行我的测试代码并检查 HTML 结果

附:您必须拥有具有不同 ID 的手风琴才能分别打开每个手风琴。

【讨论】:

  • 我在 while 循环中没有发现任何错误,但我是通过添加 foreach 而不是 while 来实现的。现在它的工作。感谢您的建议。
猜你喜欢
  • 2011-03-05
  • 1970-01-01
  • 2021-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-23
  • 1970-01-01
相关资源
最近更新 更多