Maison  >  Article  >  développement back-end  >  yii2中如何使用modal弹窗之基本使用,yii2使用modal弹窗_PHP教程

yii2中如何使用modal弹窗之基本使用,yii2使用modal弹窗_PHP教程

WBOY
WBOYoriginal
2016-07-12 08:51:18838parcourir

yii2中如何使用modal弹窗之基本使用,yii2使用modal弹窗

作者:白狼 出处:http://www.manks.top/yii2_modal_baseuse.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

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

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

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

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

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

1、use yii\bootstrap\Modal;
2、创建一个按钮,用于调modal的显示
<span>echo</span> Html::a('创建', '#',<span> [
    </span>'id' => 'create',
    'data-toggle' => 'modal',
    'data-target' => '#create-modal',
    'class' => 'btn btn-success',<span>
]);</span>

 

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

 

4、修改我们的create操作如下
<span>public</span> <span>function</span><span> actionCreate()
{
    </span><span>$model</span> = <span>new</span><span> Test();
    </span><span>if</span> (<span>$model</span>->load(Yii::<span>$app</span>->request->post()) && <span>$model</span>-><span>save()) {
        </span><span>return</span> <span>$this</span>->redirect(['index'<span>]);
    } </span><span>else</span><span> {
        </span><span>return</span> <span>$this</span>->renderAjax('create',<span> [
            </span>'model' => <span>$model</span>,<span>
        ]);
    }
}</span>

 

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

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

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

以上,我们在yii2中实现了modal的基本使用。我们还讲述了在yii2中有关modal结gridview的使用,推荐你看一看。

[考虑目前国内网站大部分采集文章十分频繁,更有甚者不注明原文出处,原作者更希望看客们查看原文,以防有任何问题不能更新所有文章,避免误导!]

继续阅读

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1130980.htmlTechArticleyii2中如何使用modal弹窗之基本使用,yii2使用modal弹窗 作者:白狼 出处:http://www.manks.top/yii2_modal_baseuse.html本文版权归作者,欢迎转载,但未...
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn