1

早上好/下午,

我正在寻求以下方面的帮助:

{foreach key=num item=customfield from=$customfields}
<div class="control-group" style="margin-bottom:0px">
    <label class="control-label" for="customfield{$customfield.id}">{$customfield.name}</label>
    <div class="controls" style="margin-left:145px;">
    {$customfield.input} {$customfield.description}
    </div>
</div>
{/foreach}

我的 smarty 模板有一个登录页面,该页面设置有 2 列注册页面,如下所示:

col1 有姓名、姓氏、电子邮件等。 col2 有地址、地址 2 等。

这些都对齐以使 col1 在表格的左侧和 col2 在右侧。

现在使用上面的代码,foreach 代码,它只会将样式设置为 1 列表,而不是 2。

我将如何让它一次显示 2 个结果并将它们显示在表格中。

我要感谢大家提前提供帮助。

编辑 2。

{foreach key=num item=customfield from=$customfields}
{if $customfields@interation is even by 2}
<tr><td>{$customfield.name}{$customfield.input}{$customfield.description}</td>
{else} <td><td>{$customfield.name}{$customfield.input}{$customfield.description}</td>
</tr>{/if}{/foreach}

需要改变什么?

编辑 3。

使用以下代码解决了问题。

{foreach from=$customfields item=customfield name=ODDEVEN }
<tr><td style="border-left:0px;">
{if $smarty.foreach.ODDEVEN.index % 2}
<div class="control-group">
    <label class="control-label" for="customfield{$customfield.id}" style="width:125px;">{$customfield.name}</label>
    <div class="controls" style="margin-left:145px;">
    {$customfield.input} {$customfield.description}
    </div>
</div>
{else}</td>
<td><div class="control-group" style="margin-bottom:0px">
    <label class="control-label" for="customfield{$customfield.id}" style="width:125px;">{$customfield.name}</label>
    <div class="controls" style="margin-left:145px;">
    <div class="fixinput span4">{$customfield.input}</div> {$customfield.description}
    </div>
</div>
</td></tr>
{/if}
{/foreach}
4

0 回答 0