zoukankan      html  css  js  c++  java
  • Yii Framework 开发教程Zii组件-Tabs示例

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

    显示结果如下:

    201212129010

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

    另外,可参考:

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

  • 相关阅读:
    【javaSE】Exception in thread "main" java.lang.ArrayStoreException: java.lang.Integer
    property
    多继承与super
    GIL全局解释器锁
    深浅拷贝
    生成器
    迭代器
    设置ll命令
    修改Centos中的ll命令(以 K 为单位显示文件大小)
    打包解压缩命令
  • 原文地址:https://www.cnblogs.com/imxiu/p/3451937.html
Copyright © 2011-2022 走看看