CJuiTabs 显示分页UI组件,和Yii Framework 开发教程(17) UI 组件 TabView示例功能类似,它封装了JUI tabs插件。
前基本用法如下:
<?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;' ), )); ?>
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', ), ); }
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.'); } }