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防盗链的常用方法小结
Jul 02 PHP
PHP程序员最常犯的11个MySQL错误小结
Nov 20 PHP
php中global和$GLOBALS[]的分析之一
Feb 02 PHP
php读取图片内容并输出到浏览器的实现代码
Aug 08 PHP
利用PHP将部分内容用星号替换
Apr 21 PHP
php获取本机真实IP地址实例代码
Mar 31 PHP
php实现三级级联下拉框
Apr 17 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
Feb 23 PHP
PHP实现求连续子数组最大和问题2种解决方法
Dec 26 PHP
分析php://output和php://stdout的区别
May 06 PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 PHP
PHP正则之正向预查与反向预查讲解与实例
Apr 06 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
xml+php动态载入与分页
2006/10/09 PHP
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
PHP模板引擎Smarty内建函数详解
2016/04/11 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
2013/12/11 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
基于Jquery代码实现手风琴菜单
2015/11/19 Javascript
微信小程序 选择器(时间,日期,地区)实例详解
2016/11/16 Javascript
jquery+css实现侧边导航栏效果
2017/06/12 jQuery
浅谈Vue 初始化性能优化
2017/08/31 Javascript
详解Node全局变量global模块
2017/09/28 Javascript
微信小程序中添加客服按钮contact-button功能
2018/04/27 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
2018/08/22 Javascript
Vue 页面权限控制和登陆验证功能的实例代码
2019/06/20 Javascript
python字符串过滤性能比较5种方法
2017/06/22 Python
浅谈python import引入不同路径下的模块
2017/07/11 Python
python使用for循环计算0-100的整数的和方法
2019/02/01 Python
opencv设置采集视频分辨率方式
2019/12/10 Python
10个示例带你掌握python中的元组
2020/11/23 Python
python批量提取图片信息并保存的实现
2021/02/05 Python
让IE下支持Html5的placeholder属性的插件
2014/09/02 HTML / CSS
美国第二大团购网站:LivingSocial
2016/07/24 全球购物
澳大利亚自然和有机的健康美容产品一站式商店:Ziani Beauty
2017/12/28 全球购物
Crocs波兰官方商店:女鞋、男鞋、童鞋、洞洞鞋
2019/10/08 全球购物
俄罗斯马克西多姆家居用品网上商店:Максидом
2020/02/06 全球购物
管理专员自荐信
2014/01/26 职场文书
优质服务口号
2014/06/11 职场文书
单位委托书怎么写
2014/08/02 职场文书
工作作风懒散检讨书
2014/10/29 职场文书
工人先进事迹材料
2014/12/26 职场文书
护士年终考核评语
2014/12/31 职场文书
美德少年事迹材料(2016推荐版)
2016/02/25 职场文书
女性励志书籍推荐
2019/08/19 职场文书
开学第一周日记(三篇范文)
2019/08/23 职场文书
小学四年级作文之写景
2019/08/23 职场文书