zoukankan      html  css  js  c++  java
  • 获取联级下拉栏目

    在数据库里有如下数据:其中子分类为零的为主导航, 将下面的栏目在前台显示出来,如下效果

    .tpl如下:

    <tr><td>栏  目:<select name="nav"><option style="padding: 0;">请选择一个栏目类别</option>{$nav}</select></td></tr>

     下面演示如何使数据在前台显示出:

    1 两个要用的数据库函数如下:是navModel对象的成员函数

            //查询所有主导航,没有limit
            public function getAllFrontNav(){
                $_sql = "select id,nav_name,nav_info,sort from cms_nav where pid=0 order by sort asc";
                return parent::all($_sql);
            }
            //查询所有子导航
            public function getAllChildNav(){
                $_sql = "select id,nav_name,nav_info,sort from cms_nav where pid=$this->id order by sort asc $this->limit";
                return parent::all($_sql);
            }

    2 实现前台样式如下:重点在此,利用循环,再注入变量

            private function add(){
                $_nav = new NavModel();
                foreach ($_nav->getAllFrontNav() as $_object){
                    $_html .= '<optgroup label="'.$_object->nav_name.'">';
                    $_nav->id = $_object->id;//得到主导航的id用来查找它的子导航
                    if (!!$_childnav = $_nav->getAllChildFrontNav()){
                        foreach ($_childnav as $_object){
                            $_html .= '<option>'.$_object->nav_name.'</option>';
                        }
                    }
                    $_html .= '</optgroup>';
                }
                $this->_tpl->assign('nav',$_html);
            }

    3 简单的css样式自行修改了

  • 相关阅读:
    C语言qsort函数算法性能测试
    文档流 css中间float clear和布局
    EasyUI Combobox 默认设置
    碳化硅资料整理
    hdu 4864 Task(贪婪啊)
    tiny210——uboot移植Makefile文章分析
    规则字符串大小比较?
    js产生随机数
    四个好看的CSS样式表格
    request的setAttribute()怎么用的?
  • 原文地址:https://www.cnblogs.com/by-dxm/p/6286788.html
Copyright © 2011-2022 走看看