搜索
系统检测到您的用户名不符合规范:

thinkphp3.2实现动态构建单选列表

浏览:2425 发布日期:2015年01月12日 分类:功能实现 关键字: 构造 thinkphp
仅提供思路, 抛砖引玉之用!用控制器代码控制模板的输出。 可以重复利用代码, 不用重复制造轮子。
高手请绕道, php纯技术讨论学习群:323899029


function.php 中写一个公共方法用于创建单选列表function CreateRadio($name,$default,$val){
$str = '<span class="RadioList '.$name.'">';
foreach($val as $k => $v){
$str .= '<i>';
if($k==$default){
$str .= '<input type="radio" checked="checked" name="'.$name.'" id="'.$name.'_'.$k.'" value="'.$k.'" /><label for="'.$name.'_'.$k.'">'.$v.'</label>';
}else{
$str .= '<input type="radio" name="'.$name.'" id="'.$name.'_'.$k.'" value="'.$k.'" /><label for="'.$name.'_'.$k.'">'.$v.'</label>';
}
$str .= '</i>';
}
$str .= '</span>';
return $str;

}
在需要的控制器中写像这样写$sexRadio = CreateRadio('sex',1,array('0'=>'保密','1'=>'男','2'=>'女'));
$this->assign('sexRadio',$sexRadio);
在模板中直接输出 {$sexRadio} 变量即可

最后html的表现是这样的:<span class="RadioList sex">
<i>
<input type="radio" value="0" id="sex_0" name="sex"><label for="sex_0">保密</label>
</i>
<i>
<input type="radio" value="1" id="sex_1" name="sex" checked="checked"><label for="sex_1">男</label>
</i>
<i>
<input type="radio" value="2" id="sex_2" name="sex"><label for="sex_2">女</label>
</i>
</span>
说明:

CreateRadio($name,$default,$val)

$name 是单选列表的名称,html中的 <span class="RadioList sex"> 样式名称sex就为了标明是性别的单选列表, 用于在前台方便js调用。

$default 是列表的默认值,在html中的表现就是那个值被选了,我传进去的是1,所以"男"这个就被选择了。 当然可以传空值进去。

$sexRadio 是一个数组,根据数组的长度循环出所有的值,根据自己的需求传值进去。


当然这是抛砖引玉,用这样的思路可以构建下拉列表、复选框列表。
评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
hnfly
积分:526 等级:LV2
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /