有关Yii Tab类:

http://www.yiichina.com/api/CTabView

http://www.yiichina.com/api/CJuiTabs

http://blog.csdn.net/dreamzml/article/details/8485446

http://www.yiiframework.com/wiki/569/how-to-create-cjui-tabs-render-partial-ajax-tabs-color-tabs/

Yii Framework 开发教程Zii组件-Tabs示例

基本用法如下:

[php]
<?php $this->widget('zii.widgets.jui.CJuiTabs', array(
'tabs'=>array(
'Static tab'=>'Static content',
'Render tab'=>$this->renderPartial('pages/_content1',null,true),
'Ajax tab'=>array('ajax'=>array('ajaxContent','view'=>'_content2')),
),
'options'=>array(
'collapsible'=>true,
'selected'=>1,
),
'htmlOptions'=>array(
'style'=>'width:500px;'
),
)); ?> <?php $this->widget('zii.widgets.jui.CJuiTabs', array(
'tabs'=>array(
'Static tab'=>'Static content',
'Render tab'=>$this->renderPartial('pages/_content1',null,true),
'Ajax tab'=>array('ajax'=>array('ajaxContent','view'=>'_content2')),
),
'options'=>array(
'collapsible'=>true,
'selected'=>1,
),
'htmlOptions'=>array(
'style'=>'width:500px;'
),
)); ?> 显示了三个页面不同内容显示方法,Static Tab显示一个静态内容,Render Tab使用Partial渲染一个页面,而Ajax Tab则通过AJAX显示一个页面,注意后面两个需要在SiteController中定义Actions 如下: [php]
public function actions()
{
return array(
'page'=>array(
'class'=>'CViewAction',
),
// ajaxContent action renders
//"static" pages stored under 'protected/views/site/pages'
// They can be accessed via:
//index.php?r=site/ajaxContent&view=FileName
'ajaxContent'=>array(
'class'=>'application.controllers.AjaxViewAction',
),
);
} 其中AjaxViewAction为一自定义ViewAction,为CViewAction的子类,可以显示静态页面,其定义如下: [php]
class AjaxViewAction extends CViewAction
{
private $_viewPath; public function run()
{
if(Yii::app()->request->isAjaxRequest)
{
$this->resolveView($this->getRequestedView());
$controller=$this->getController();
$controller->renderPartial($this->view, null, false, true);
}
else
throw new CHttpException(400,'Invalid request.
Please do not repeat this request again.');
}
} class AjaxViewAction extends CViewAction
{
private $_viewPath; public function run()
{
if(Yii::app()->request->isAjaxRequest)
{
$this->resolveView($this->getRequestedView());
$controller=$this->getController();
$controller->renderPartial($this->view, null, false, true);
}
else
throw new CHttpException(400,'Invalid request.
Please do not repeat this request again.');
}
}

显示结果如下:

From: http://www.2cto.com/kf/201301/180930.html

另外,可参考:

http://blog.csdn.net/xinqingch/article/details/8286801

Yii Framework 开发教程Zii组件-Tabs示例的更多相关文章

  1. YII Framework学习教程-YII的Model-开发规范-路径别名-命名空间

    到这里,大概的YII开发已经基本可以,但是下面要将的所有课程,学完之后可以让你更爱YII.下面的教程是讲的MVC的M,model.数据,业务,代码的集中地区.所以开始之前,学学开发规范-路径别名-命名 ...

  2. YII Framework学习教程-YII的异常处理

    异常无处不在,作为程序员,活着就是为了创造这些异常,然后修复这些异常而存在的.YII框架封装了PHP的异常,让异常处理起来更简单. 使用 YII处理错误和异常的配置方法: 你可以在入口文件中定义YII ...

  3. Python3+PyCharm+Django+Django REST framework开发教程

    一.说明 自己一是想跟上潮流二是习惯于直接干三是没有人可以请教,由于这三点经常搞得要死要活.之前只简单看过没写过Diango,没看过Django REST framework,今天一步到位直接上又撞上 ...

  4. YII Framework学习教程-YII的安全

    web应用的安全问题是很重要的,在“黑客”盛行的年代,你的网站可能明天都遭受着攻击,为了从某种程度上防止被攻击,YII提供了防止攻击的几种解决方案.当然这里讲的安全是片面的,但是值得一看. 官方提供的 ...

  5. YII Framework学习教程-YII的国际化

    一个web应用,发布到互联网,就是面向全球用户.用户在世界的各个角落都可以访问到你的web应用,当然要看你的网站和不和谐,不和谐的web应用在和谐社会是不让你访问的. YII提供了国际化的支持,可以让 ...

  6. YII Framework学习教程-YII的日志

    日志的作用(此处省略1000字) YII中的日志很好很强大,允许你把日志信息存放到数据库,发送到制定email,存放咋文件中,意见显示页面是,甚至可以用来做性能分析. YII中日志的基本配置:/yii ...

  7. 官网的许多Mobile开发教程,Blog和示例代码

    http://docwiki.embarcadero.com/RADStudio/Seattle/en/Mobile_Tutorials:_Mobile_Application_Development ...

  8. Sagit.Framework For IOS 开发框架入门开发教程2:一行代码实现引导页

    前言: 开篇比较简单:Sagit.Framework For IOS 开发框架入门开发教程1:框架下载与环境配置 第二篇教程之前写了一半,感觉不太好写,而且内容单纯介绍API,要说的很多,又枯燥乏味. ...

  9. [置顶] Kendo UI开发教程: Kendo UI 示例及总结

    前面基本介绍完Kendo UI开发的基本概念和开发步骤,Kendo UI的示例网站为http://demos.kendoui.com/ ,包含了三个部分 Web DemoMobile DemoData ...

随机推荐

  1. git 彩色显示当前branch

    环境: fedora 20 $ curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-prompt. ...

  2. html渐隐轮播

    这是我之前用的时候从一个模板中下载下来用的,现在又用到了,我又重新找了一遍,为防止我下次用到忘记,特写下此文: 下载插件:jquery-2.1.4.min.js和slider.js 首页轮播页面首页i ...

  3. ODBC方式连接Informix数据库

    公司某个报表系统使用Informix数据库,在谋划使用Perl语言写数据采集程序后,花费了很多时间建立Perl访问Informix连接.恰巧Windows下ActivePerl的CPAN中又没有DBD ...

  4. torch7在mac上的安装

    在安装torch7的时候,一开始一直参考的是官方的文档: http://torch.ch/docs/getting-started.html#_ 但是无论怎么装都无法成功,主要是卡在了source那一 ...

  5. Python Tips and Traps(一)

    1.如果想得到一个列表的index和内容,可以通过enumerate快速实现 drinks = ['coffee','tea', 'milk', 'water'] for index, drink i ...

  6. std::copy的使用

    看到有人在用std::copy这个东西,很简洁和爽啊,,所以找些帖子学习学习 http://blog.sina.com.cn/s/blog_8655aeca0100t6qe.html https:// ...

  7. 进位位(carry)与溢出位(overflow)的区别

    处理器内部以补码表示有符号数,8个二进制位能够表达的整数范围是:+127 ~ -128,16位表达的范围是:+32767 ~ -32768.如果运算结果超出了这个范围,就是产生了溢出:有溢出,说明有符 ...

  8. 黑马程序员-------.net基础知识三

    条件执行语句 if 语句 语法: [csharp] view plaincopyprint? if(条件) { 语句1;语句2:语句3: ··· } 执行过程: 先判断条件是否为true ,如果为tr ...

  9. 保存项目文件“XXX.csprj”时出错。类没有注册。

    [出错提示]保存项目文件“XXX”时出错.类没有注册.正在查找具有CLSID的对象:{D9B3211D-E57F-4426-AAEF-30A806ADD397}. [解决办法] 需要安装:MSXML_ ...

  10. C/C++ ceil和floor函数

    ceil 是“天花板" floor 是 “地板”  一个靠上取值,另一个靠下取值,如同天花板,地板. double ceil ( double x ); float ceil ( float ...