zoukankan      html  css  js  c++  java
  • yii2 插件使用

    GridView插件

    行内文本编辑

    后端

          if (Yii::$app->request->post('hasEditable')) {
                $id = Yii::$app->request->post('editableKey');
                $model = ModulePosition::findOne($id);
                $out = ['output' => '', 'message' => ''];
                $posted = current($_POST['ModulePosition']);
                $post = ['ModulePosition' => $posted];
                if ($model->load($post) && $model->save(false)) {
                    $out = ['output' => '', 'message' => ''];
                } else {
                    $out['message'] = $model->getErrors();
                }
                echo Json::encode($out);
                return;
            }
    View Code

    前端

    引入
    use kartikgridGridView;
    
     'export' => false,//使用kar.必须进行此处配置
    
                [
                    'class' => 'kartikgridEditableColumn',
                    'attribute' => 'name',
                    'editableOptions' => [
                        'placement' => 'right',
                        'header' => '广告名称',
                        'size' => 'md'
                    ],
                    'vAlign' => 'middle',
                    'format' => 'raw',
                ],
    View Code

     状态切换

                [
                    'class' => 'kartikgridEditableColumn',
                    'attribute' => 'status',
                    'value' => function ($model) {
                        return jrhbadminmodelsReport::getReportStatus()[$model->status];
                    },
                    'format' => 'raw',
                    'headerOptions' => ['width' => '80px'],
                    'editableOptions' => [
                        'placement' => 'left',
                        'inputType' => Editable::INPUT_DROPDOWN_LIST,
                        'data' => jrhbadminmodelsReport::getReportStatus(),
                    ],
                    'filter' => jrhbadminmodelsReport::getReportStatus(),
    
                ],
    View Code

     多选

      [
                    'label'=>'标签',
                    'attribute'=>'tag',
                    'class'=>'kartikgridEditableColumn',
                    'value'=>function($model){
                         if($model->tag){
                            return implode(',',$model->tag);
                         }else{
                            return '';
                         }
                    },
                    'editableOptions'=>function($model){
                        $data=ArrayHelper::map(Tag::find()->all(),'tag','tag');
                        if($model->profile->tag){
                            $model->tag=explode(',',$model->profile->tag);
                            $data=array_merge($data, array_combine($model->tag,$model->tag));
                        }
                        return [
                                'placement'=>'left',
                                'size'=>'md',
                                'inputType'=>kartikeditableEditable::INPUT_SELECT2,
                                'options'=>[
                                        'data' => $data,
                                        'options' => ['multiple' => true],
                                        'pluginOptions' => [
                                                'tags' => true,
                                                'tokenSeparators' => [',', ' '],
                                                'maximumInputLength' => 10
                                        ],
                                ],
                        ];
                    },
                ],
    View Code
  • 相关阅读:
    使用python抓取知乎日报的API数据
    git 使用笔记(三)-分支的使用
    git 使用笔记(二)
    git 使用笔记(一)
    Grunt的配置和使用(一)
    笔记-Node.js中的核心API之HTTP
    笔记-Nodejs中的核心API之Events
    (译)Node.js的 EventEmitter 教程
    高性能网站优化-确保异步加载脚本时保持执行顺序
    linux环境下source vimrc提示错误unexpected token `"autocmd"'
  • 原文地址:https://www.cnblogs.com/huay/p/11510688.html
Copyright © 2011-2022 走看看