0

在我的 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 中完成的,因为上面的代码不起作用。它不会抛出错误,但看不到提交的值。

编辑:当我打印出region_codes来自 Smarty 模板中的请求的参数时,我得到以下信息:

[region_codes] => Array ( [0] => EU [1] => RW )

4

2 回答 2

3
{if $region_code|in_array:$smarty.request.region_codes}checked="yes"{/if}
于 2012-05-17T09:16:34.357 回答
1

将条件更改为

{if $smarty.request.region_codes|in_array:$region_code}checked="yes"{/if}
于 2012-05-17T09:08:58.670 回答