1

我有一个围绕ul无序列表的 foreach 循环,第一个li是主要主题,后面应该是属于该主题的项目。

这是它应该是什么样子

在此处输入图像描述

People 和 System 这两个词都属于li一个类nav-header

这就是我ul与标题和项目的其他示例文本一起显示的方式。

在此处输入图像描述

这是我列表的 HTML 输出

<ul class="nav nav-list">
<li class="nav-header">ProfileZ</li>
<li><a href="#MTIxfElrYXJpYW4tWW91dGg=.html">test</a></li>
<ul class="nav nav-list">
<li class="nav-header">zetaasdf</li>
<li><a href="#MTMwfFpldGFOZXdDYW1wYWlnbjI=.html">ZetaNewCampaign2</a></li>
<ul class="nav nav-list">
<li class="nav-header">zeta</li>
<li><a href="#MTMxfGFzZGZhc2Rm.html">asdfasdf</a></li>
</ul>
</ul></ul>

ul是重复和嵌套,我用来生成列表的php代码如下。

<?php foreach ($profilesResults as $profilesArray) { ?>
<ul class="nav nav-list">
<li class="nav-header"><?php echo $profilesArray->name; ?></li>
<?php
$campaignsObj = new Campaigns();
$campaignsResults = $campaignsObj->getCampaignsByProfileSideBar($accountID, $profilesArray->id);
foreach ($campaignsResults as $campaignsArray) {
?>
<li><a href="<?= $this->siteUrl() ?>campaign-rankings-<?= base64_encode($campaignsArray->id . "|" . str_replace(" ", "-", $campaignsArray->name)) ?>.html"><?php echo $campaignsArray->name ?></a></li>
<?php } ?>
<?php } ?>
</ul>

我应该进行哪些更改才能使我的列表显示在第一张照片中。哪里只有一个 open 和 close ul,其余的liinside 以及特殊分类的 header lis?

谢谢

4

1 回答 1

2

只需将ul声明从第一个圆圈中移出。它应该如下所示:

<ul class="nav nav-list">
<?php foreach ($profilesResults as $profilesArray) { ?>
    <li class="nav-header"><?php echo $profilesArray->name; ?></li>
    <?php
        $campaignsObj = new Campaigns();
        $campaignsResults = $campaignsObj->getCampaignsByProfileSideBar($accountID, $profilesArray->id);
        foreach ($campaignsResults as $campaignsArray) {
    ?>
    <li><a href="<?= $this->siteUrl() ?>campaign-rankings-<?= base64_encode($campaignsArray->id . "|" . str_replace(" ", "-", $campaignsArray->name)) ?>.html"><?php echo $campaignsArray->name ?></a></li>
    <?php } ?>
<?php } ?>
</ul>
于 2012-12-10T08:41:49.757 回答