这是我用于表格的代码:
<tbody>
{foreach key=num item=referral from=$referrals}
{if $referral.commission neq "$0.00 USD"}
<tr>
<td>{$referral.date}</td>
<td>{$referral.service}</td>
<td>{$referral.amountdesc}</td>
<td>{$referral.commission}</td>
<td>{$referral.status}</td>
</tr>
{/if}
{foreachelse}
<tr>
<td colspan="6">{$LANG.norecordsfound}</td>
</tr>
{/foreach}
</tbody>
基本上,如果$referral.commission
是$0.00 USD
,那么我不希望该行显示。但是,现在这些行正在显示,我不确定我做错了什么......
答案 0 :(得分:2)
这是你的报价。使用单引号并将if语句更改为'$0.00 USD'
,而不是使用双引号。
<tbody>
{foreach key=num item=referral from=$referrals}
{if $referral.commission != '$0.00 USD'}
<tr>
<td>{$referral.date}</td>
<td>{$referral.service}</td>
<td>{$referral.amountdesc}</td>
<td>{$referral.commission}</td>
<td>{$referral.status}</td>
</tr>
{/if}
{foreachelse}
<tr>
<td colspan="6">{$LANG.norecordsfound}</td>
</tr>
{/foreach}
</tbody>
答案 1 :(得分:0)
试试这个:
<tbody>
{foreach key=num item=referral from=$referrals}
{if $referral.commission neq "$0.00 USD"}
<tr>
<td>{$referral.date}</td>
<td>{$referral.service}</td>
<td>{$referral.amountdesc}</td>
<td>{$referral.commission}</td>
<td>{$referral.status}</td>
</tr>
{else}
<tr>
<td colspan="6">{$LANG.norecordsfound}</td>
</tr>
{/if}
{/foreach}
</tbody>
有关在foreach循环中使用if / else的更多详细信息,请参阅http://www.smarty.net/docs/en/language.function.foreach.tpl