bootstrap modal+gridview实现弹出框效果


Posted in Javascript onAugust 15, 2017

项目需要在gridview的表单信息中点击更新,弹出表单进行操作,不需要跳转。

bootstrap modal+gridview实现弹出框效果

1.在girdview中加入更新操作按钮用来调用modal弹窗

'buttons' => [
  'update' => function ($url, $model, $key) {
       return Html::a('<span class="glyphicon glyphicon-pencil"></span>', '#', [
          'data-toggle' => 'modal',
          'data-target' => '#update-modal',
          'class' => 'data-update',
          'data-id' => $key,
          'title'=>'更改状态',
          ]);
        },
      ],

2.gridview的头部创建modal弹窗样式

<?php
use yii\bootstrap\Modal;//模态弹出框
Modal::begin([
  'id' => 'update-modal',
  'header' => '<h4 class="modal-title">更改状态</h4>',
  'footer' => '<a href="#" rel="external nofollow" class="btn btn-primary" data-dismiss="modal">Close</a>',
]); 
Modal::end();
?>

3.gridview中ajax

<?php    
$requestUpdateUrl = Url::toRoute('update');
$updateJs = <<<JS
  $('.data-update').on('click', function () {
    $.get('{$requestUpdateUrl}', { id: $(this).closest('tr').data('key') },
      function (data) {
        $('.modal-body').html(data);
      } 
    );
  });
JS;
$this->registerJs($updateJs); 
?>

4.控制器update方法

public function actionUpdate($id)
{
  $model = Order_packet::findOne($id);
  $model->setScenario('update');//指定场景,防止时间等变量同时被更改
  if ($model->load(Yii::$app->request->post()) && $model->save()) {
    return $this->redirect(['index']);
  } else {
    return $this->renderAjax('update', [  //这里需要渲染update模版,要在view中写update
      'model' => $model,
    ]);
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 学习历程和心得分享
Dec 12 Javascript
了解一点js的Eval函数
Jul 26 Javascript
Js放到HTML文件中的哪个位置有什么区别
Aug 21 Javascript
jquery live()调用不存在的解决方法
Feb 26 Javascript
Angular.js中$apply()和$digest()的深入理解
Oct 13 Javascript
js自制图片放大镜功能
Jan 24 Javascript
webpack入门+react环境配置
Feb 08 Javascript
使用AngularJS2中的指令实现按钮的切换效果
Mar 27 Javascript
Javasript设计模式之链式调用详解
Apr 26 Javascript
jquery实现选项卡切换代码实例
May 14 jQuery
将RGB值转换为灰度值的简单算法
Oct 09 Javascript
微信小程序获取当前时间及星期几的实例代码
Sep 20 Javascript
vue实现点击图片放大效果
Aug 15 #Javascript
jquery获取链接地址和跳转详解(推荐)
Aug 15 #jQuery
JavaScript获取tr td 的三种方式全面总结(推荐)
Aug 15 #Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
Aug 15 #jQuery
Vue组件通信实践记录(推荐)
Aug 15 #Javascript
js移动端事件基础及常用事件库详解
Aug 15 #Javascript
js实现移动端轮播图效果
Dec 09 #Javascript
You might like
php实现根据字符串生成对应数组的方法
2014/09/22 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
js GridView 实现自动计算操作代码
2009/03/25 Javascript
javascript 闭包
2011/09/15 Javascript
JavaScript 更严格的相等 [译]
2012/09/20 Javascript
js实现的点击div区域外隐藏div区域
2014/06/30 Javascript
浅谈javascript中for in 和 for each in的区别
2015/04/23 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
2016/06/28 Javascript
js利用appendChild对标签进行排序的实现方法
2016/10/16 Javascript
AngularJS之自定义服务详解(factory、service、provider)
2017/04/14 Javascript
jQuery实现select下拉框获取当前选中文本、值、索引
2017/05/08 jQuery
详解使用nvm管理多版本node的方法
2017/08/30 Javascript
vue 过滤器filter实例详解
2018/03/14 Javascript
微信小程序实现图片上传功能
2018/05/28 Javascript
Vue加载组件、动态加载组件的几种方式
2018/08/31 Javascript
JavaScript实现随机点名器实例详解
2019/05/07 Javascript
Jquery动态列功能完整实例
2019/08/30 jQuery
vue图片上传组件使用详解
2019/12/23 Javascript
vue 百度地图(vue-baidu-map)绘制方向箭头折线实例代码详解
2020/04/28 Javascript
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
Python中动态创建类实例的方法
2017/03/24 Python
Python安装模块的常见问题及解决方法
2018/02/05 Python
TensorFlow 模型载入方法汇总(小结)
2018/06/19 Python
Python使用win32com模块实现数据库表结构自动生成word表格的方法
2018/07/17 Python
Python实现将Excel转换成xml的方法示例
2018/08/25 Python
python实现简易动态时钟
2018/11/19 Python
Pycharm如何运行.py文件的方法步骤
2020/03/03 Python
python判断是空的实例分享
2020/07/06 Python
Python 找出英文单词列表(list)中最长单词链
2020/12/14 Python
H5最强接口之canvas实现动态图形功能
2019/05/31 HTML / CSS
迟到检讨书800字
2014/01/13 职场文书
小学生期末评语大全
2014/04/21 职场文书
教师党员承诺书2015
2015/01/21 职场文书
副总经理岗位职责
2015/02/02 职场文书
活动费用申请报告
2015/05/15 职场文书
以MySQL5.7为例了解一下执行计划
2022/04/13 MySQL