2012-05-17 85 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中完成的,因爲上面的代碼不起作用。它不會拋出錯誤,但它不會看到提交的值。

編輯:當我打印出來的region_codes參數通過請求從我的Smarty的模板內的我得到這個:

​​

回答

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

更改條件

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

那給我這個錯誤:'警告:in_array()期望參數2是數組,在第87行的/%%C6^C6D^C6DA2CF8%%redirect_list.tpl.php中給出的字符串' – crmpicco

+0

@crmpicco查看我的回答 – heyanshukla

+0

@heyanshukla有雅,這表現很好。謝謝。 – crmpicco

相關問題