drby30217 2014-10-19 01:52
浏览 150
已采纳

用foreach增加DIV容器

Java in my header lists:

<script type="text/javascript">
    function showDiv(idInfo) {
        var sel = document.getElementById('divLinks').getElementsByTagName('div');
        for (var i=0; i<sel.length; i++) {
            sel[i].style.display = 'none';
        }
        document.getElementById('container'+idInfo).style.display = 'block';
    }
</script>

<style type="text/css">
    #container1, #user_elements {
        display : none;
        border : 0px solid blue;
        height : 100%;
        overflow : hidden;
    }
</style>

I don't need a bunch of containers I am just using this to display the new link clicked in the main DIV.

This is my Links code:

<div id="linkDiv">
    <?php
        $dir = "./modules";
        $folders = new DirectoryIterator($dir);
        $i=1;
        foreach ($folders as $item) {
            if ($item->isDir() && !$item->isDot()){
    ?>
    <a href="#" onclick="showDiv('<?php echo $i; ?>');return false"><?php echo $item->getFilename(); ?></a><br />
    <?php
                $i++;
            }
        }
    ?>
</div>

This is the display location:

<div id="divLinks">
    <?php
        $path = "./modules";
        $dir = new DirectoryIterator($path);
        foreach ($dir as $fileinfo) {
            if ($fileinfo->isDir() && !$fileinfo->isDot()) {
                echo $fileinfo->getFilename().'<br>';
            }
        }
    ?>
    <!-- Increase container# by 1 for every foreach loop -->
    <div id="container1"><?php $fileinfo->getFilename() ?></div>
</div>

<!-- So if $path = Directory1 and Directory2 then the output would look like: -->
<div id="divLinks">
    <div id="container1">Container #1<p>$dir/Directory1/index.php</div>
    <div id="container2">Container #2<p>$dir/Directory2/index.php</div>
</div>

So what I need to is while the

foreach ($dir as $fileinfo) {

Finds directories the Main or display container increases by 1

  • 写回答

2条回答 默认 最新

  • douyijin7741 2014-10-19 03:07
    关注

    Is this what you mean?

    <div id="divLinks">
        <?php
            $path = "./modules";
            $dir = new DirectoryIterator($path);
            $count= 1;
            foreach ($dir as $fileinfo) {
                if ($fileinfo->isDir() && !$fileinfo->isDot()) {
                    echo '<div id="container' . $count . '">' . $fileinfo->getFilename() . '</div>';
                    //increase counter by 1
                    $count++;
                }
            }
        ?>
    </div>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!