【问题标题】:submit a form from a popup to the original window using zend framework使用zend框架将表单从弹出窗口提交到原始窗口
【发布时间】:2012-07-06 21:19:21
【问题描述】:

我不知道这是否可能,我正在使用带有 zend-framwork 的 php,我想在弹出窗口中为用户显示一个编辑器。

我想将此表单提交回原来的窗口并关闭窗口。

1) 问题是我无法使用$this->view->form = $form 查看表单并在该操作的视图中回显它?我正在使用此代码弹出新窗口。我试图通过从控制器回显表单来解决这个问题,它工作但我无法在任何地方提交。

<a href="#" onClick="MyWindow=window.open('<?php echo $this->url(array('module' => 'default', 'controller' => 'index', 'action' => 'editor'));         ?>','MyWindow','toolbar=no,location=no,directories=no,status=no, menubar=no,scrollbars=no,resizable=no,width=600,height=300'); return false;">Click Here</a>

2)如何将弹出窗口恢复到原来的窗口,甚至可以吗?

如果我的问题遗漏了什么,请提出。

【问题讨论】:

    标签: php forms zend-framework popup submit


    【解决方案1】:

    您可以在打开的弹出窗口的脚本中使用 window.opener 属性。 像这样

    window.opener.TheMethodOfParentWindow(ValueOfTheEditor);
    window.close();
    

    如果您想查看,我已经在此主题上写了一篇详细的帖子: http://rupeshpatel.wordpress.com/2012/05/15/how-to-call-javascript-function-of-parent-window-from-new-pop-up-window/

    【讨论】:

      【解决方案2】:

      我不知道是否可以从弹出窗口提交表单到父窗口的操作。

      在我的应用程序中,我使用了一个弹出窗口来编辑报价,它提交到同一控制器中的另一个操作,并在提交后使用 jQuery 在 1 或 2 秒内关闭窗口,类似于“报价已编辑。谢谢!呜呜呜……”此类编辑的问题是用户无法立即查看已编辑的报价。他应该刷新“父”页面以查看更改。

      另一种方法是不使用弹出窗口,而是在同一页面中弹出 div。然后您可以在同一页面/操作中提交表单。

      【讨论】:

        猜你喜欢
        • 2013-04-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多