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 跨域访问解决方案
Feb 14 Javascript
Javascript学习笔记之 对象篇(一) : 对象的使用和属性
Jun 24 Javascript
JQuery页面地址处理插件jqURL详解
May 03 Javascript
跟我学习javascript的Date对象
Nov 19 Javascript
JavaScript中立即执行函数实例详解
Nov 04 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
Sep 04 Javascript
浅析JS中什么是自定义react数据验证组件
Oct 19 Javascript
使用Vue.js 和Chart.js制作绚丽多彩的图表
Jun 15 Javascript
pm2启动ssr失败的解决方法
Jun 29 Javascript
vue回到顶部监听滚动事件详解
Aug 02 Javascript
Vue formData实现图片上传
Aug 20 Javascript
关于JavaScript回调函数的深入理解
Jun 27 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 IE中下载附件问题解决方法
2014/01/07 PHP
php判断页面是否是微信打开的示例(微信打开网页)
2014/04/25 PHP
PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能
2018/05/31 PHP
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
23个超流行的jQuery相册插件整理分享
2011/04/25 Javascript
使用jquery动态加载javascript以减少服务器压力
2012/10/29 Javascript
JS判断不能为空实例代码
2013/11/26 Javascript
用js判断输入是否为中文的函数
2014/03/10 Javascript
js鼠标点击图片实现随机变换图片的方法
2015/02/16 Javascript
Javascript仿新浪游戏频道鼠标悬停显示子菜单效果
2015/08/21 Javascript
基于Jquery和html5的7款个性化地图插件
2015/11/17 Javascript
浅谈Sublime Text 3运行JavaScript控制台
2016/06/06 Javascript
jQuery实现的简单无刷新评论功能示例
2017/11/08 jQuery
基于Vue2的独立构建与运行时构建的差别(详解)
2017/12/06 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
vue移动端屏幕适配详解
2019/04/30 Javascript
微信小程序与webview交互实现支付功能
2019/06/07 Javascript
vue element实现表格合并行数据
2020/11/30 Vue.js
五句话帮你轻松搞定js原型链
2020/12/09 Javascript
Python类的多重继承问题深入分析
2014/11/09 Python
浅谈tensorflow1.0 池化层(pooling)和全连接层(dense)
2018/04/27 Python
TensorFlow实现模型评估
2018/09/07 Python
Python IDE Pycharm中的快捷键列表用法
2019/08/08 Python
python enumerate内置函数用法总结
2020/01/07 Python
Django的CVB实例详解
2020/02/10 Python
python中slice参数过长的处理方法及实例
2020/12/15 Python
不同浏览器对CSS3和HTML5的支持状况
2009/10/31 HTML / CSS
webView加载html图片遇到的问题解决
2019/10/08 HTML / CSS
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
AssertionError 跟一下那个类是 “is – a”的关系
2012/02/21 面试题
幼儿园小班评语
2014/04/18 职场文书
2014党员学习习主席讲话思想汇报
2014/09/15 职场文书
2015年招商引资工作总结
2015/04/25 职场文书
董事长开业致辞
2015/07/29 职场文书
解决Jenkins集成SonarQube遇到的报错问题
2021/07/15 Java/Android
C3 线性化算法与 MRO之Python中的多继承
2021/10/05 Python