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

WBOY
풀어 주다: 2016-07-14 10:07:57
원래의
1099명이 탐색했습니다.

前基本用法如下:

 
 
[php]  
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;'  
    ),  
)); ?>  
 
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',  
            ),  
        );  
}  
 
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.');
}
}
 
显示结果如下:
 
201212129010

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/477828.htmlTechArticle前基本用法如下: [php] ?php $this-widget(zii.widgets.jui.CJuiTabs, array( tabs=array( Static tab=Static content, Render tab=$this-renderPartial(pages/_content1,null,true), A...
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!