0

我在这样的 tpl 文件中有一个 foreach 循环代码:

[{foreach from=$oView->getArticleList() item=actionproduct name=test_articleList}]
[{include file="inc/product_alt.tpl"  product=$actionproduct testid="action_"|cat:$actionproduct->oxarticles__oxid->value test_Cntr=$smarty.foreach.test_articleList.iteration}]
[{/foreach}]

foreach 循环中包含的文件product_alt.tpl包含一个简单的 div 容器,并为每个产品显示。现在我正在寻找一种解决方案,为每个第二个 div 容器添加一个额外的类。

我用谷歌搜索了一下,发现(我认为是这样)我必须使用偶数和奇数。但是我坚持如何将它准确地应用于 foreach 循环,目标是每个 secod div 容器都获得一个额外的类。

4

1 回答 1

2

您正在寻找cycle. 例如,您可以做的是$class在您的 include 语句中分配一个额外的变量,该变量会被分配更改,如下所示:

 {cycle values='yourClass1,youClass2' assign='class'} 

这可能是您奇怪/偶数想法的来源:手册说

 {cycle values='odd,even' assign='class'} 

但这些只是价值观。Anyeay,您的变量“类”现在具有交替的“yourClass1”和“yourClass2”(或奇数/偶数)作为内容。如果您将其分配给您的包含,然后添加类似

<div class="{$class}">

你得到交替的类。其中之一就是你想要的。另一个可以是空的..

查看循环手册:http ://www.smarty.net/docsv2/en/language.function.cycle

于 2012-04-27T12:54:18.970 回答