2012-05-17 2 views
0

В моем шаблоне Smarty у меня есть ряд флажков с именем «region_codes», которые содержат значения «GB», «US», «EU» и т. Д. И т. Д. ...определить, был ли отмечен флажок в блоке Smarty 2

Это код в шаблоне Smarty:

<input type="checkbox" name="region_codes[]" value="{$region_code}" {if isset($smarty.request.region_codes.$region_code)}checked="yes"{/if} /> 

Как вы можете видеть из фрагмента кода, я попытался определить, был ли флажок был отмечен, когда форма была отправлена. Как это делается в Smarty, так как приведенный выше код не работает. Он не выдает ошибку, но не отображает представленное значение.

EDIT: Когда я распечатать параметр region_codes, который приходит через запрос из моего шаблона Smarty я получаю это:

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

ответ

1

Изменить условие для

{if $smarty.request.region_codes|in_array:$region_code}checked="yes"{/if} 
+0

Это дает мне эту ошибку: 'Warning: in_array() ожидает, что параметр 2 будет массивом, строка указана в /%%C6^C6D^C6DA2CF8%%redirect_list.tpl.php в строке 87' – crmpicco

+0

@crmpicco проверить мой ответ – heyanshukla

+0

@heyanshukla Got ya, это сработало хорошо. Благодарю. – crmpicco

Смежные вопросы