多语言展示
当前在线:1534今日阅读:155今日分享:35

yii2 modal 弹窗的详细教程

工作中,领导要求列表页点击查看弹出窗口查看为了方便,额 确实方便。Modal也即是模态窗,通俗的说就是弹窗。是一款bootstrap的js插件。
方法/步骤
1

创建按钮,用调modal的显示'buttons' => [                         'view' => function ($url, $model, $key ) {                            if ($model->supplier) {                                return Html::a('查看供货商',['/supplier/look-view','id'=> $model->supplier->id],[                                    'id' => 'create',                                    'data-toggle' => 'modal',                                    'data-target' => '#data-supplier',                                    'class' => 'data-supplier',                                    'data-id' =>  $model->supplier->id                                                        ]);                               // return 'supplier->id . '' target='_blank'>查看供货商';                            } else {                                return '暂无供货商信息';                            }                        },]

2

创建modal(页面底部创建就可以啦) 'data-supplier',        'header' => '

',        'footer' => 'Close',    ]);     Modal::end();?>

3

给按钮添加点击事件$requestUrl = Url::toRoute(['supplier/look-view']);$js = <<registerJs($js);我这里是jQuery获取id,因为不是一个model下的  ,如果是同一个model下可以这样写$.get('{$requestUrl}', {id: $key},functio (data){}  )

4

点击[查看]按钮会异步请求数据,我们修改请求操作方法如下   public function actionLookView($id)    {        //return $this->renderPartial('view', [        return $this->renderAjax('view', [            'model' => $this->findModel($id),        ]);    }OK啦

5

关于modal的使用,此处有两点需要提醒大家:在控制元素(比如按钮或者链接)上设置属性 data-toggle='modal',同时设置 data-target='#identifier' 或 href='#identifier' 来指定要切换的特定的模态框(带有 id='identifier')

推荐信息