4

私は PHP smarty templater を使用しています。偶数行の強調表示を作成する必要があります。その方法の例を送ってください。

また、変数があります:

$smarty.foreach.product.index
4

3 に答える 3

14

このような状況のために、smarty には {cycle} というメソッドがあります。

<table>
{foreach $products as $product}
<tr class="{cycle values="odd,even"}">
   <td>{$product.name}</td>
</tr>
{/foreach}
</table>

この結果は次のようになります。

<table>
<tr class="odd">
   <td>1st product</td>
</tr>
<tr class="even">
   <td>2nd product</td>
</tr>
<tr class="odd">
   <td>3rd product</td>
</tr>
</table>

スタイルシート ファイルで、奇数行と偶数行のプロパティを次のように定義します。

tr.even td{background: #CCCCCC;}
tr.odd td{background: #EFEFEF;}
于 2013-01-22T21:06:44.817 に答える
2
<table>
{foreach key=i item=row from=$items}
<tr{if $i%2==1} bgcolor=#e4e4e4{/if}><td>{$i}</td></tr>
{/foreach}
</table>
于 2013-01-22T09:48:08.687 に答える
1
{section name=myloop start=0 loop=10 step=1}
<tr class="{if $smarty.section.myloop.index is even}tr_even{else}tr_odd{/if}"><td>{$smarty.section.myloop.index}</td></tr>
{/section}
于 2014-09-25T13:10:31.723 に答える