html中的smarty条件{block}无法正常工作

时间:2013-12-29 06:55:31

标签: html smarty

我正在使用smarty实现带有父子html的条件{block}标记实现。

在我的父母身边,我有:

<li class="{block name=block1}{/block}" style="{block name=block2}{/block}">

在子html中:

{if $value}
    {block name=block2}background-color: {$value}{/block}
{else}
    {block name=block1}selected{/block}
{/if}

期望:根据$ value的值,if条件块中的任何一个应该执行并填充父项<li>

发生了什么:它正在执行$value是非空白还是空白并同时填充classstyle属性。

请帮助我在这里做错了或我的实施不正确。

2 个答案:

答案 0 :(得分:0)

{if $value}
    {block name=block2}background-color: {$value}{/block}
{else}
    {block name=block1}selected{/block}
{/if}

至少/ if应该用于关闭if

的标签

答案 1 :(得分:0)

Smarty {blocks}不能与{if}条件一起使用。它们将永远被执行。在这里看到一个Post in the smarty forum,其中解释得更好一些,并在底部给出了一个(丑陋的,在我看来)解决方法。

最重要的是,您无法轻松实现您尝试做的事情,您将不得不更改代码。