Yii2中如何使用modal弹窗(基本使用)


Posted in PHP onMay 30, 2016

Modal也即是模态窗,通俗的说就是弹窗。是一款bootstrap的js插件,使用效果也是非常好。

为什么要使用modal就不必多说了,一个网站,在开发过程中你说你没用过js弹窗我都不信!好的弹窗不仅仅给人以美感,也会让我们开发效率提高,甚至心情也会舒畅!

我们看看在yii2中如何使用modal。

比如我们之前添加数据的时候,通常情况下会点击按钮跳转到添加页面,保存后再跳转到列表页。

现在我们希望点击添加按钮的时候,在当前页面弹窗添加数据,看具体实现。

1、use yii\bootstrap\Modal;

2、创建一个按钮,用于调modal的显示

echo Html::a('创建', '#', [
'id' => 'create',
'data-toggle' => 'modal',
'data-target' => '#create-modal',
'class' => 'btn btn-success',
]);

3、创建modal

<?php 
Modal::begin([
'id' => 'create-modal',
'header' => '<h4 class="modal-title">创建</h4>',
'footer' => '<a href="#" class="btn btn-primary" data-dismiss="modal">Close</a>',
]); 
$requestUrl = Url::toRoute('create');
$js = <<<JS
$.get('{$requestUrl}', {},
function (data) {
$('.modal-body').html(data);
} 
);
JS;
$this->registerJs($js);
Modal::end(); 
?>

4、修改我们的create操作如下

public function actionCreate()
{
$model = new Test();
if ($model->load(Yii::$app->request->post()) && $model->save()) {
return $this->redirect(['index']);
} else {
return $this->renderAjax('create', [
'model' => $model,
]);
}
}

这个时候我们点击按钮[创建],会看到modal弹窗,截图如下。

Yii2中如何使用modal弹窗(基本使用)

有同学可能要说,这个页面没必要异步加载过来。确实,你也可以直接在页面上echo $this->renderAjax();,不过需要提醒的是,该操作记得修改表单提交的action哦。

关于modal的使用,此处有两点需要提醒大家:

在控制元素(比如按钮或者链接)上设置属性 data-toggle="modal",同时设置 data-target="#identifier" 或 href="#identifier" 来指定要切换的特定的模态框(带有 id="identifier")

以上,我们在yii2中实现了modal的基本使用。

PHP 相关文章推荐
用PHP连接Oracle数据库
Oct 09 PHP
php中将时间差转换为字符串提示的实现代码
Aug 08 PHP
PHP多线程批量采集下载美女图片的实现代码(续)
Jun 03 PHP
探讨:如何使用PHP实现计算两个日期间隔的年、月、周、日数
Jun 13 PHP
php实现数组筛选奇数和偶数示例
Apr 11 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
Oct 15 PHP
php UNIX时间戳用法详解
Feb 16 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
Jul 26 PHP
PHP 中TP5 Request 请求对象的实例详解
Jul 31 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
Mar 21 PHP
YII框架行为behaviors用法示例
Apr 26 PHP
解决在Laravel 中处理OPTIONS请求的问题
Oct 11 PHP
[原创]php求圆周率的简单实现方法
May 30 #PHP
smarty中改进truncate使其支持中文的方法
May 30 #PHP
php实现的一段简单概率相关代码
May 30 #PHP
PHP中的表达式简述
May 29 #PHP
一个简单的php路由类
May 29 #PHP
解读PHP中上传文件的处理问题
May 29 #PHP
round robin权重轮循算法php实现代码
May 28 #PHP
You might like
PHP 采集程序中常用的函数
2009/12/09 PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
2010/05/27 PHP
提高php编程效率技巧
2015/08/13 PHP
php使用APC实现实时上传进度条功能
2015/10/26 PHP
写了一个layout,拖动条连贯,内容区可为iframe
2007/08/19 Javascript
javascript 弹出窗口中是否显示地址栏的实现代码
2011/04/14 Javascript
javascript获取dom的下一个节点方法
2014/09/05 Javascript
jQuery中index()的用法分析
2014/09/05 Javascript
jquery实现表格本地排序的方法
2015/03/11 Javascript
js正则表达式匹配数字字母下划线等
2015/04/14 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
在浏览器中打开或关闭JavaScript的方法
2015/06/03 Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
2016/03/22 Javascript
微信开发 js实现tabs选项卡效果
2016/10/28 Javascript
详解Javascript几种跨域方式总结
2017/02/27 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
vue拖拽组件使用方法详解
2018/12/01 Javascript
vue页面加载时的进度条功能(实例代码)
2020/01/13 Javascript
Vue组件模板的几种书写形式(3种)
2020/02/19 Javascript
[02:36]DOTA2英雄基础教程 帕格纳
2014/01/20 DOTA
python获取文件扩展名的方法
2015/07/06 Python
用Python写脚本,实现完全备份和增量备份的示例
2018/04/29 Python
python的turtle库使用详解
2019/05/10 Python
django做form表单的数据验证过程详解
2019/07/26 Python
python实现ip地址查询经纬度定位详解
2019/08/30 Python
关于Python 解决Python3.9 pandas.read_excel(‘xxx.xlsx‘)报错的问题
2020/11/28 Python
H5 meta小结(前端必看篇)
2016/08/24 HTML / CSS
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
char型变量中能不能存贮一个中文汉字
2015/07/08 面试题
协议书模板
2014/04/23 职场文书
人力资源管理系自荐信
2014/05/31 职场文书
师范毕业生求职信
2014/07/11 职场文书
效能风暴心得体会
2014/09/04 职场文书
结婚保证书
2015/01/16 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
详解Mysql事务并发(脏读、不可重复读、幻读)
2022/04/29 MySQL