0

在我的循环中,我想将记录集中的当前列与下一个列进行比较,以便在不同时添加一个额外的空白行。

{if $smarty.section.row.next.pc_name != $timeblocks[row].pc_name}
    <tr bgcolor="#333333"><td colspan="6">&nbsp;</td></tr>
{/if}
4

1 回答 1

0

我总是通过检查以前的记录来完成这些事情,如下所示:

{assign var="last" value=""}

{section name=row loop=$rows}
    ...
    {if $last != $timeblocks[row].pc_name}
        <tr bgcolor="#333333"><td colspan="6">&nbsp;</td></tr>
        {assign var="last" value=$timeblocks[row].pc_name} {* UPDATE LAST *}
    {/if}
{/section}

但是,如果你想保持你的逻辑,你可以使用index_nextsection 属性,它给你下一个迭代索引(不幸的是不是下一个迭代元素,但没有问题):

{if $timeblocks[$smarty.section.row.index_next].pc_name != $timeblocks[row].pc_name}
    <tr bgcolor="#333333"><td colspan="6">&nbsp;</td></tr>
{/if}
于 2012-06-05T07:18:45.747 回答