繁体   English   中英

提交后弹出成功消息

[英]success message with popup after submit

我有一个表格,可以让您在数据库中输入新歌曲。 问题是,当我单击“保存”按钮时,我想弹出一个包含成功包含消息的弹出窗口。 我有两个文件,一个代表视图,另一个代表控制器。 我可以在包含JavaScript代码的控制器中放入一个变量,该变量允许我调出弹出窗口,然后从视图中检索它吗?

这是控制器(我使用Slim Framework)。

$popup = array();
$popup = '$(function(){
    $( "#dialog-message" ).dialog({
        modal: true, 
        buttons: {
            Ok: function() {
                $( this ).dialog( "close" );
            }
        }
    });
});';
$app->render('newkaraoke.html', array('pop'=>$popup));

这是参考变量所在的视图

<?php echo $pop;?> 

我的解决方案没有考虑任何框架,但是无论如何都可以工作。

您可以使用的最简单的方法是一个简单的if()语句,如下所示:

if(isset(_POST['submit-music'])) {
echo "
    <div id='success-message'>Your song has been added to the database</div>
";
}

只要将$_POST['submit-music']变量传递给视图,此代码就起作用。 您总是可以将POST var放在诸如$submitted类的更简单的名称中,然后检查是否存在。

为了删除弹出窗口(如果需要),我编写了以下代码(尽管它使用JQuery,但是您可能可以创建Javascript替代方法)。

$('document').ready(function() {
    $('#success-message').delay(3000).fadeOut();
});

3000是淡出div之前经过的时间。 在这种情况下,它设置为3秒。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM