PHP開發架構Yii Framework教程(41) Zii組件-Tabs樣本

來源:互聯網
上載者:User

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;'     ),     )); ?>

顯示了三個頁面不同內容顯示方法,Static Tab顯示一個靜態內容,Render Tab使用Partial渲染一個頁面 ,而Ajax Tab則通過AJAX顯示一個頁面,注意後面兩個需要在SiteController中定義Actions 如下:

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的子類,可以顯示靜態頁面,其定義如下:

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.');    }}

顯示結果如下:

查看全套教程:http://www.bianceng.cn/webkf/PHP/201301/35265.htm

本例下載:http://www.imobilebbs.com/download/yii/JuiProgressBarDemo.zip

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.