Yii Framework 开发教程(29) Zii组件-Menu 示例
来源:互联网 发布:淘宝碧欧泉小样真假 编辑:程序博客网 时间:2024/05/22 01:38
介绍完Yii数据库接口外,从本篇开始介绍Zii组件,包括列表视图ListView,表格视图GridView,此外还包括一些基于JQuery的UI组件,如AutoComplete,DataPicker, Button, Drag 和 Drop等。
本文介绍Menu菜单用法,CMenu使用Html 列表显示多级菜单,Menu配置通过其属性item来配置,每个菜单项包括三个主要属性
- visible 是否可见
- active 当前菜单项是否选中,
- items 子菜单项。
此外还包括如下属性:
- label: 可选,菜单名称,支持使用HTML标记.
- url: 可选,点击该菜单转的URL链接
- template: 可选,菜单模板
- linkOptions: array, 可选,额外的HTML链接属性
- itemOptions: array, 可选,额外的显示菜单项的HTML属性。
- submenuOptions: array, 可选,额外显示子菜单的HTML属性.
一般可以把Menu定义在Layout布局中,比如本例,修改protected/views/layout/main.php
<?php $this->widget('zii.widgets.CMenu',array('items'=>array(array('label'=>'Home','url'=>array('/site/index')),array('label'=>'About','url'=>array('/site/page','view'=>'about')),array('label'=>'Contact','url'=>array('/site/page','view'=>'contact')),array('label'=>'Login','url'=>array('/site/login'),'visible'=>false),),)); ?>
本例使用CViewAction来显示几个静态页面,静态页面的缺省目录为当前Controller的View目录下的pages子目录,本例在pages目录下创建了两个静态页面about.php, contact.
要使用CViewAction来显示静态页面,需要修改Controller的actions方法:
public function actions(){return array('page'=>array('class'=>'CViewAction',));}
此外如果要显示菜单的层次轨迹(breadcrumbs),可以使用Zii组件中的CBreadcrumbs组件,CBreadcrumbs一般配合CMenu使用
<?php if(isset($this->breadcrumbs)):?><?php $this->widget('zii.widgets.CBreadcrumbs', array('links'=>$this->breadcrumbs,)); ?><!-- breadcrumbs --><?php endif?>
本例使用Yii缺省的CSS,显示结果如下:
如果不使用CSS,显示结果如下:
由此可见,需要同时使用CMenu组件配合合适的CSS才能显示漂亮的菜单。
本例下载
- Yii Framework 开发教程(29) Zii组件-Menu 示例
- Yii Framework 开发教程(29) Zii组件-Menu 示例
- Yii Framework 开发教程(29) Zii组件-Menu 示例
- Yii Framework 开发教程(30) Zii组件-ListView 示例
- Yii Framework 开发教程(31) Zii组件-DetailView 示例
- Yii Framework 开发教程(32) Zii组件-GridView示例
- Yii Framework 开发教程(33) Zii组件-Accordion示例
- Yii Framework 开发教程(34) Zii组件-AutoComplete示例
- Yii Framework 开发教程(35) Zii组件-Button示例
- Yii Framework 开发教程(36) Zii组件-DatePicker示例
- Yii Framework 开发教程(37) Zii组件-Dialog示例
- Yii Framework 开发教程(38) Zii组件-ProgressBar示例
- Yii Framework 开发教程(39) Zii组件-Slider示例
- Yii Framework 开发教程(40) Zii组件-SliderInput示例
- Yii Framework 开发教程(41) Zii组件-Tabs示例
- Yii Framework 开发教程(42) Zii组件-Draggable示例
- Yii Framework 开发教程(43) Zii组件-Droppable示例
- Yii Framework 开发教程(44) Zii组件-Resizable示例
- NetBeans啟動配置
- 软件工程—面向过程的软件设计方法
- Git 基本原理与使用指南
- 三种云计算模式之间的关系探讨(二)
- B-树
- Yii Framework 开发教程(29) Zii组件-Menu 示例
- 铁路环评不达标
- Darren3年的人生经历(2012终结篇,欢迎捧场)
- 不要再抱怨了,来点实在的。
- Codeforces Round #158 (Div. 2) (完全)
- struts.xml中设置拦截器,限制上传文件
- 下一代个性化推荐系统
- 自动化测试脚本的编写和执行——自动执行cts测试10遍
- wireshark 使用基础