仅提供思路, 抛砖引玉之用!用控制器代码控制模板的输出。 可以重复利用代码, 不用重复制造轮子。 AD:真正免费,域名+虚机+企业邮箱=0元
高手请绕道, php纯技术讨论学习群:323899029
function.php 中写一个公共方法用于创建单选列表function CreateRadio($name,$default,$val){<br>
$str = '<span>';<br>
foreach($val as $k => $v){<br>
$str .= '<i>';<br>
if($k==$default){<br>
$str .= '<input><label>'.$v.'</label>'; <br>
}else{<br>
$str .= '<input><label>'.$v.'</label>'; <br>
}<br>
$str .= '</i>';<br>
}<br>
$str .= '</span>';<br>
return $str;<br>
<br>
}
在需要的控制器中写像这样写$sexRadio = CreateRadio('sex',1,array('0'=>'保密','1'=>'男','2'=>'女'));<br>
$this->assign('sexRadio',$sexRadio);
在模板中直接输出 {$sexRadio} 变量即可
最后html的表现是这样的:<span><br>
<i><br>
<input><label>保密</label><br>
</i><br>
<i><br>
<input><label>男</label><br>
</i><br>
<i><br>
<input><label>女</label><br>
</i><br>
</span>
说明:
CreateRadio($name,$default,$val)
$name 是单选列表的名称,html中的 样式名称sex就为了标明是性别的单选列表, 用于在前台方便js调用。
$default 是列表的默认值,在html中的表现就是那个值被选了,我传进去的是1,所以“男”这个就被选择了。 当然可以传空值进去。
$sexRadio 是一个数组,根据数组的长度循环出所有的值,根据自己的需求传值进去。
当然这是抛砖引玉,用这样的思路可以构建下拉列表、复选框列表。