Zend框架2 jQuery模态窗口(Zend Framework 2 & jquery modal

2019-09-01 01:00发布

如何去约jQuery的模态对话框内显示的控制器操作?

Answer 1:

首先,你需要你的Javascript通过AJAX加载一个网址,这将取决于哪一种莫代尔您使用等,有一吨的库在那里。 我会假设你正在使用的基本JQuery用户界面对话框模态。

比如link

<!-- this points to your action below.. -->
<a class="some-link" title="title here" href="mycontroller/test">testing</a>

例如使用Javascript(简单的例子在谷歌发现,许多例子在那里..)

$(document).ready(function() {
    $('.some-link').each(function() {
        var $link = $(this);
        var $dialog = $('<div></div>')
            .load($link.attr('href'))
            .dialog({
                autoOpen: false,
                title: $link.attr('title'),
            });
    });
});

现在,你需要确保通过Ajax请求提供模态的内容时,你的动作不会使主要布局。

这里是一个非常简单的做,通过与Ajax请求空视图替换基地布局的方法。 这是不是最好的方法,但它是最简单的这种情况下,)

例如行动

public function testAction()
{
    if($this->getRequest()->isXmlHttpRequest()) {
        $this->layout('application/layout/ajax-layout');
    }

    return new ViewModel(array()); // ..
}

应用/布局/ Ajax的layout.phtml

<?php echo $this->content ?>


Answer 2:

我想你想这种代码http://jqueryui.com/dialog/#modal-message里面只显示你的行动

否则它要打开一个URL到你的模式就好像是http://blog.nemikor.com/2009/04/18/loading-a-page-into-a-dialog/



文章来源: Zend Framework 2 & jquery modal dialog