html_checkboxes

Attribute NameTypeRequiredDefaultDescription
namestringNocheckboxname of checkbox list
valuesarrayYes, unless using options attributen/aan array of values for checkbox buttons
outputarrayYes, unless using options attributen/aan array of output for checkbox buttons
selectedstring/arrayNoemptythe selected checkbox element(s)
optionsassociative arrayYes, unless using values and outputn/aan associative array of values and output
separatorstringNoemptystring of text to separate each checkbox item
labelsbooleanNotrueadd <label>-tags to the output

html_checkboxes is a custom function that creates an html checkbox group with provided data. It takes care of which item(s) are selected by default as well. Required attributes are values and output, unless you use options instead. All output is XHTML compatible.

html_checkboxes 是一個客制化函式,會根據所提供的資料,產生一個 html checkbox 集合。此函式也可以設定預設選定的項目。此函式需要的屬性為 values 與 output,但你也可 以使用 options 代替這兩者。所有的輸出都相容於 XHTML。

All parameters that are not in the list above are printed as name/value-pairs inside each of the created <input>-tags.

所有在上面所列出的參數並不是每個都可以以 name/value 的方式在 <input> 標籤中列印出來的。

Example 8-6. html_checkboxes

<?php

require('Smarty.class.php');
$smarty = new Smarty;
$smarty->assign('cust_ids', array(1000,1001,1002,1003));
$smarty->assign('cust_names', array('Joe Schmoe','Jack Smith','Jane Johnson','Charlie Brown'));
$smarty->assign('customer_id', 1001);
$smarty->display('index.tpl');

?>

where index.tpl is:

其中 index.tpl 的內容是:

{html_checkboxes name="id" values=$cust_ids selected=$customer_id output=$cust_names separator="<br />"}
<?php

require('Smarty.class.php');
$smarty = new Smarty;
$smarty->assign('cust_checkboxes', array(
            
1000 => 'Joe Schmoe',
            
1001 => 'Jack Smith',
            
1002 => 'Jane Johnson',
            
1003 => 'Charlie Brown'));
$smarty->assign('customer_id', 1001);
$smarty->display('index.tpl');
?>

where index.tpl is:

其中 index.tpl 的內容是:

{html_checkboxes name="id" options=$cust_checkboxes selected=$customer_id separator="<br />"}

both examples will output:

上面兩個範例的輸出結果為:

<label><input type="checkbox" name="id[]" value="1000" />Joe Schmoe</label><br />
<label><input type="checkbox" name="id[]" value="1001" checked="checked" />Jack Smith</label><br />
<label><input type="checkbox" name="id[]" value="1002" />Jane Johnson</label><br />
<label><input type="checkbox" name="id[]" value="1003" />Charlie Brown</label><br />