斑马条纹与PHPTAL?

时间:2008-11-25 05:06:18

标签: php template-tal phptal

我正在尝试PHPTAL,我想渲染一个带有斑马纹的表。我正在循环一个简单的php关联数组($ _SERVER)。

请注意,我不想使用jQuery或类似的东西,我正在尝试学习PHPTAL!

目前我的工作方式是这样的(对我来说太冗长了):

<tr tal:repeat="item server">
  <td tal:condition="repeat/item/odd" tal:content="repeat/item/key" class="odd">item key</td>
  <td tal:condition="repeat/item/even" tal:content="repeat/item/key" class="even">item key</td>
  <td tal:condition="repeat/item/odd" tal:content="item" class="odd">item value</td>
  <td tal:condition="repeat/item/even" tal:content="item" class="even">item value</td>
</tr>

基本上我想要一些条件赋值,但我不确定语法。

2 个答案:

答案 0 :(得分:3)

您可以通过编写phptal_tales_evenodd()函数创建表达式修饰符(请参阅手册中的phptal_tales()):

<td tal:attributes="class evenodd:repeat/item/odd">

答案 1 :(得分:2)

好吧,看起来我有自己的答案,不过我仍然觉得这很难看:

<tr tal:repeat="item server">
  <td tal:content="repeat/item/key" tal:attributes="class php: repeat.item.odd ? 'odd' : 'even'">item key</td>
  <td tal:content="item" tal:attributes="class php: repeat.item.odd ? 'odd' : 'even'">item value</td>
</tr>

任何人都有更优雅的东西寻找PHPTAL?