在我的Smarty模板中,我有一系列名为“region_codes”的复选框,其中包含值“GB”,“US”,“EU”等等...
这是我的Smarty模板中的代码:
<input type="checkbox" name="region_codes[]" value="{$region_code}" {if isset($smarty.request.region_codes.$region_code)}checked="yes"{/if} />
正如您在代码片段中看到的那样,我试图检测在提交表单时是否勾选了复选框。如何在Smarty中完成,因为上面的代码不起作用。它不会抛出错误,但它看不到提交的值。
编辑:当我打印出来自我的Smarty模板中的请求的region_codes
参数时,我得到了这个:
[region_codes] => Array ( [0] => EU [1] => RW )
答案 0 :(得分:3)
{if $region_code|in_array:$smarty.request.region_codes}checked="yes"{/if}
答案 1 :(得分:1)
将条件更改为
{if $smarty.request.region_codes|in_array:$region_code}checked="yes"{/if}