yeung1217 发表于 2013-7-16 18:00:23

请问怎样在读数据的时候,每4个数据换一行?

本帖最后由 yeung1217 于 2013-7-17 12:55 编辑

以普通的foreach写法为例,无论多少个数据都會在同一行:
<div class="row-fluid">
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
</div>

而我希望是每4个换一行,像这样:
<div class="row-fluid">
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
</div>

<div class="row-fluid">
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
    <div class="span3"> 內容 </div>
</div>

请问各位有没有怎么代码简单的方法呢?倒是有人在laravel实现了,不过在ci应该怎么做?
http://stackoverflow.com/questions/17011497/laravel-blade-templates-layout-structure-add-row-fluid-for-each-4-spans

先谢谢各位!

Hex 发表于 2013-7-16 19:56:47

foreach 的时候判断下就好了啊。。。
索引 和 4 取余数,等于 0 就代表4个,然后输出一个 </div><div> 就行了。。。

yeung1217 发表于 2013-7-16 20:57:18

Hex 发表于 2013-7-16 19:56 static/image/common/back.gif
foreach 的时候判断下就好了啊。。。
索引 和 4 取余数,等于 0 就代表4个,然后输出一个就行了。。。 ...

我目前就是这样做,但代码看上去好不漂亮..
有精简的还是更好~

dickfu 发表于 2013-7-16 22:42:08

我看你用的bootstrap的布局,应该是你的grid没用对,跟ci没关系
好好看看bootstrap的grid

yeung1217 发表于 2013-7-17 01:25:24

dickfu 发表于 2013-7-16 22:42
我看你用的bootstrap的布局,应该是你的grid没用对,跟ci没关系
好好看看bootstrap的grid ...

这问题跟用与不用bootstrap没有关系的,要是用站长说的方法,当然能实现,但我觉得这样有点笨,可以的话当然用最精简的代码最好了

Hex 发表于 2013-7-17 09:48:51

yeung1217 发表于 2013-7-16 20:57 static/image/common/back.gif
我目前就是这样做,但代码看上去好不漂亮..
有精简的还是更好~

觉得代码不优雅,就自己封装个 helper,很简单。
在视图里就可以一句话实现这个功能了,应该就优雅了。

就是把取余数这个过程封装起来就可以了。

yeung1217 发表于 2013-7-17 10:10:48

Hex 发表于 2013-7-17 09:48 static/image/common/back.gif
觉得代码不优雅,就自己封装个 helper,很简单。
在视图里就可以一句话实现这个功能了,应该就优雅了。



謝謝站長建議,其實你說的我也在做

不過我改了一下那個laravel答案的代碼,現在已經可以在ci用了,給大家參考一下
    function show_categories()
    {
      $categories = $this->category_model->get_categories();
      foreach(array_chunk($categories, 7) as $cat_items ) {
            echo ("<div class='span3'><ul>");
            foreach($cat_items as $cat) {
                echo ("<li>".$cat['category_name']."</li>");
            }
            echo ("</ul></div>");
      }
    }

页: [1]
查看完整版本: 请问怎样在读数据的时候,每4个数据换一行?