技术 · 2013 年 4 月 21 日

Smarty的html_options两种用法value

经常碰到Smarty的html_options,通常用来输出选择下拉框,通常需要的是label与value分开,今天正好碰到,需要label=value,两个用法。
假设一个阵列,在网站中通常就是数组:

$section=array('语文','英语','数学');

其中:
options定义数组

{html_options options=$section selected=$section_select}

是最经常使用的,即通过label显示给用户,value传输给数据库。结果是:

<option label="语文" value="0">语文</option>
<option label="英语" value="1">英语</option>
<option label="数学" value="2">数学</option>

另一个是:
values定义value,output定义label以及输出

{html_options values=$section output=$section selected=$section_select}

结果是:

<option label="语文" value="语文">语文</option>
<option label="英语" value="英语">英语</option>
<option label="数学" value="数学">数学</option>