Вопрос

Я пробую PHPTAL и хочу визуализировать таблицу с полосками зебры. Я перебираю простой массив php assoc ($ _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>

В принципе, я хочу получить какое-то условное назначение на лету, но я не уверен в синтаксисе.

Это было полезно?

Решение

Вы можете создать модификатор выражения, написав функцию phptal_tales_evenodd () (см. phptal_tales () в руководстве):

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

Другие советы

Похоже, у меня есть свой ответ, хотя я все еще думаю, что это довольно некрасиво:

<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?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top