加入收藏 | 设为首页 | 网站地图 | RSS订阅
阅读内容

PHP教程PHP处理数组模式的以选未选input多选框

日期:2011-3-29     来源:不详     作者:5i93.com收集

    一般从数据循环出来的选框要处理是否被选中都是使用IF去判断,结果造成代码一堆,速度过慢。

    我做了一个闭包分享给大家,希望对大家有用。

    代码:
    1. function ifNumExists($numList,$key) {
    2. $return = false;
    3. $arraylist = split(",", $numList);
    4. $Length = count($arraylist)-1; //最后一个数组结果为空,所以应当减去。
    5.         for ($i=0;$i<$Length;$i++){
    6.                 if ($arraylist[$i] == $key) {
    7.                         $return = true;
    8.                 }
    9.         }
    10.         return $return;
    11. }

    使用方法:
    1. ifNumExists(数组,当前单选框对应ID)

    表结构:
    单选框循环表(A):
    id   class
    1   类别1
    2   类别2
    3   类别3
    4   类别4

    单选值存放表(B):
    id   classid
    1   1,2,3,
    2   2,3,4,
    3   1,2,

    当循环表A,判断是否当前input是否被选中,那么我们就可以使用
    ifNumExists(classid,表Aid),返回的结果为true或者false,根据返回的结果我们给input增加或者不增加 checked="checked"。
    如:
    1. if (ifNumExists(classid,$value['id'])) {
    2.  $list = $list."<input type=\"checkbox\" name=\"SendNums[]\" value=\"".$value['id']."\" checked=\"checked\" />".$value['class']."</li>";
    3. }else{
    4.  $list = $list."<input type=\"checkbox\" name=\"SendNums[]\" value=\"".$value['id']."\" />".$value['class']."</li>";
    5. }
    6. return $list;

发表评论】【告诉好友】【打印此文】【收藏此文】【关闭窗口

相关新闻
    本文评论
    推荐广告
    关于本站 | 版权声明 | 免责声明 | 联系我们 | 广告服务 | 加入收藏 | 网站地图 | 网站搜索 | RSS订阅