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 相关文章推荐
一个刚完成的layout(拖动流畅,不受iframe影响)
Aug 17 Javascript
jQuery ui1.7 dialog只能弹出一次问题
Aug 27 Javascript
javascript的函数、创建对象、封装、属性和方法、继承
Mar 10 Javascript
JavaScript初学者应注意的七个细节详细介绍
Dec 27 Javascript
jquery DIV撑大让滚动条滚到最底部代码
Jun 06 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
Nov 15 Javascript
js中Image对象以及对其预加载处理示例
Nov 20 Javascript
Javascript中Promise的四种常用方法总结
Jul 14 Javascript
深入解读Node.js中的koa源码
Jun 17 Javascript
JavaScript面向对象程序设计中对象的定义和继承详解
Jul 29 Javascript
刷新页面后让控制台的js代码继续执行
Sep 20 Javascript
详解React路由传参方法汇总记录
Nov 29 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
VML绘图板②脚本--VMLgraph.js、XMLtool.js
2006/10/09 PHP
php约瑟夫问题解决关于处死犯人的算法
2015/03/23 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
2017/08/10 PHP
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
2008/03/22 Javascript
Javascript中的相等与不等运算
2010/04/25 Javascript
jquery $.getJSON()跨域请求
2011/12/21 Javascript
jquery判断小数点两位和自动删除小数两位后的数字
2014/03/19 Javascript
IE浏览器IFrame对象内存不释放问题解决方法
2014/08/22 Javascript
javascript中HTMLDOM操作详解
2014/12/11 Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
2015/03/03 Javascript
JavaScript中Date对象的常用方法示例
2015/10/24 Javascript
详解JS对象封装的常用方式
2016/12/30 Javascript
利用Angular.js编写公共提示模块的方法教程
2017/05/28 Javascript
微信小程序实现下拉刷新和轮播图效果
2017/11/21 Javascript
JavaScript 五大常见函数
2018/03/23 Javascript
微信小程序之侧边栏滑动实现过程解析(附完整源码)
2019/08/23 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
2019/09/16 Javascript
JS一次前端面试经历记录
2020/03/19 Javascript
Vue-router中hash模式与history模式的区别详解
2020/12/15 Vue.js
[01:03:09]完美世界DOTA2联赛PWL S2 Forest vs SZ 第二场 11.25
2020/11/26 DOTA
python实现绘制树枝简单示例
2014/07/24 Python
详解Python中DOM方法的动态性
2015/04/11 Python
python多线程方式执行多个bat代码
2016/06/07 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
Python 读取串口数据,动态绘图的示例
2019/07/02 Python
Python DataFrame一列拆成多列以及一行拆成多行
2019/08/06 Python
Python图像处理库PIL的ImageFont模块使用介绍
2020/02/26 Python
Python3自定义json逐层解析器代码
2020/05/11 Python
Opencv常见图像格式Data Type及代码实例
2020/11/02 Python
html5生成柱状图(条形图)效果的实例代码
2016/03/25 HTML / CSS
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
机械专业应届生求职信
2013/09/21 职场文书
仓库文员岗位职责
2014/04/06 职场文书
数学考试作弊检讨书300字
2015/02/16 职场文书
Python Matplotlib绘制等高线图与渐变色扇形图
2022/04/14 Python
Win10加载疑难解答时出错发生意外错误的解决方法
2022/07/07 数码科技