html_checkboxes

属性名称TypeRequiredDefaultDescription
namestringNocheckboxname of checkbox list
valuesarrayYes, unless using checkboxes attributen/aan array of values for checkbox buttons
outputarrayYes, unless using checkboxes attributen/aan array of output for checkbox buttons
checkedstringNoemptythe checked checkbox element
checkboxesassociative arrayYes, unless using values and outputn/aan associative array of values and output
separatorstringNoemptystring of text to separate each checkbox item

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 checkboxes instead. All output is XHTML compatible.

Example 8-6. html_checkboxes

index.php:



require('Smarty.php.class');

$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');





index.tpl:



{html_checkboxes values=$cust_ids checked=$customer_id output=$cust_names separator="<br />"}





index.php:



require('Smarty.php.class');

$smarty = new Smarty;

$smarty->assign('cust_checkboxes', array(

			1001 => 'Joe Schmoe',

			1002 => 'Jack Smith',

			1003 => 'Jane Johnson','Carlie Brown'));

$smarty->assign('customer_id', 1001);

$smarty->display('index.tpl');



index.tpl:



{html_checkboxes name="id" checkboxes=$cust_checkboxes checked=$customer_id separator="<br />"}





OUTPUT: (both examples)



<input type="checkbox" name="id[]" value="1000">Joe Schmoe<br />

<input type="checkbox" name="id[]" value="1001" checked="checked"><br />

<input type="checkbox" name="id[]" value="1002">Jane Johnson<br />

<input type="checkbox" name="id[]" value="1003">Charlie Brown<br />