3

I have an array which contains a list of names. In the front end, this has to be listed in a listed way. Using the <ul> and <li> tags.

Half of the list should be displayed under one <ul> tag and the other half under another <ul> tag.

like this:

<ul>
<li>One</li>
<li>Two</li>
<li>Three</li>
</ul>

<ul>
<li>Four</li>
<li>Five</li>
<li>Six</li>
</ul>

Now the problem is in FLUID I did not find a way to end the <ul> tags when the array loops half of the elements.

I want to do something like this

<f:for each="{my_array}" as="item">
<li>{item}</li>
<!-- if condition where count=(my_array%2) then use </ul><ul>-->
</f:for>
4

2 回答 2

8

我认为你应该在 PHP 中为中间的元素获取 id,然后你可以使用一个简单的 if,如下所示:

它是f:for. 在这里您可以查看iteration房产。当您使用迭代索引时,它是元素的当前索引。但是,您必须设置 elementLimit。

它有几个属性iteration:isFirst、isLast、isEven、isOdd、total、cycle、index。

这是一篇关于它的文章。

更新示例:

<f:for each="{my_array}" as="item" iteration="itemIterator">
    <li>{item}</li>
    <f:if condition="{itemIterator.index} = {elementLimit}">
        </ul><ul>
    </f:if>
</f:for>
于 2013-05-15T12:14:36.513 回答
0

这应该有效。唯一的问题是当有奇数的菜单条目时。

<f:for each="{my_array}" as="item" iteration="itemIterator">
    <ul>
        <li>{item}</li>
        <f:if condition="{itemIterator.iterator}%({itemIterator.total}/2) == 0">
            </ul><ul>
        </f:if>
    </ul>
</f:for>
于 2013-05-15T17:59:13.450 回答