html_options
            
                
                
                
                
                
                
                
                    
                        Attribute Name
                        Type
                        Required
                        Default
                        Description
                    
                
                
                    
                        values
                        array
                        Yes, unless using options attribute
                        n/a
                        an array of values for dropdown
                    
                    
                        output
                        array
                        Yes, unless using options attribute
                        n/a
                        an array of output for dropdown
                    
                    
                        selected
                        string/array
                        No
                        empty
                        the selected option element(s)
                    
                    
                        options
                        associative array
                        Yes, unless using values and output
                        n/a
                        an associative array of values and output
                    
                    
                        name
                        string
                        No
                        empty
                        name of select group
                    
                
                
            
			
			html_options is a custom function that creates html option 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.
			
			
			If a given value is an array, it will treat it as an html OPTGROUP,
			and display the groups. Recursion is supported with OPTGROUP. All
			output is XHTML compatible.
			
			
			If the optional name attribute is given, the
			<select name="groupname"></select> tags will enclose
			the option list. Otherwise only the option list is generated.
			
			
			All parameters that are not in the list above are printed as
			name/value-pairs inside the <select>-tag. They are ignored if
			the optional name is not given.
			
html_options
index.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','Carlie Brown'));
$smarty->assign('customer_id', 1001);
$smarty->display('index.tpl');
index.tpl:
<select name=customer_id>
	{html_options values=$cust_ids selected=$customer_id output=$cust_names}
</select>
index.php:
require('Smarty.class.php');
$smarty = new Smarty;
$smarty->assign('cust_options', array(
			1001 => 'Joe Schmoe',
			1002 => 'Jack Smith',
			1003 => 'Jane Johnson',
			1004 => 'Charlie Brown'));
$smarty->assign('customer_id', 1001);
$smarty->display('index.tpl');
index.tpl:
<select name=customer_id>
	{html_options options=$cust_options selected=$customer_id}
</select>
OUTPUT: (both examples)
<select name=customer_id>
	<option value="1000">Joe Schmoe</option>
	<option value="1001" selected="selected">Jack Smith</option>
	<option value="1002">Jane Johnson</option>
	<option value="1003">Charlie Brown</option>
</select>