超薄框架应用程序渲染

时间:2013-07-24 07:58:09

标签: php jquery slim

我有两个路由,get方法可视化所有数据,post方法插入数据。在get方法中使用app-render('视图名称',和数据),等等。在方法中post我会做同样的事情,以便看到最后插入包含成功消息的弹出窗口的同一页面。这两个方法有相同的url,问题是当我在post方法中渲染时,我查看了一半内容的页面,因为它无法识别get方法中的数据。

$app->get('/url.html',function()use($app){
     //code
     $app->render('url.html', array('name'=>$variable1,'user'=>$variable2)));   

});

我想在插入

后显示弹出窗口
$app->post('/url.html',function()use($app){

 //code

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

    )); 

});

在视图“/url.html”

<?php echo $popup ?>

但不起作用

然后总结视图在post方法和弹出窗口中不起作用

1 个答案:

答案 0 :(得分:0)

尝试将“popup-code”包装成加载:

$popup='$(function() { 
      $(window).load(function () { 
          $( "#dialog-message" ).dialog({modal: true, buttons: {Ok: function() {$( this ).dialog( "close" )}}});
      };
});';

您可以在使用时从我的示例代码中删除标签和空格,只需将它们放在一起以便易读。

编辑:您是否将输出包装到<script type="text/javascript"><?php echo $popup; ?></script>