【问题标题】:Opening a Browser window popup in ExtJS 5 MVC application在 ExtJS 5 MVC 应用程序中打开浏览器窗口弹出窗口
【发布时间】:2015-01-14 20:46:38
【问题描述】:

我正在开发一个应用程序,我们在其中打开 tabPanel 中的所有视图,这很简单。

现在我们有了一个新要求,我们必须在 Browser 弹出窗口中打开视图,以便将其拖到辅助监视器上。 Ext.Window 将不起作用。

我们有一个单页应用程序,但不确定如何在单独的浏览器窗口中打开视图。

我尝试了以下方法,但没有 JS 事件在新窗口上起作用:

var OpenWindow = window.open('', windowName, 'width=330,height=200,resizable=0');
OpenWindow.document.body.appendChild(divObj);//divObj is a div object in which i rendered the extjs view.

它打开了弹出窗口,但没有样式或 js 正在工作。

请帮助或指出一些完成的例子。

提前致谢。

【问题讨论】:

    标签: extjs extjs-mvc extjs5


    【解决方案1】:

    当打开一个新窗口时,它根本没有任何关于 ExtJS 的信息。您需要将 extjs 包含到新的 windows html 中。最好的方法是创建一个新的弹出索引文件或要调用的页面。所以说你在 extjs 中正确使用了路由器说你有一个名为 http://testsite.com 的站点 然后,您可以在打开的窗口中创建当前应用程序中的元素,以便在调用 testsite.com/#popup 时加载,然后将其放入 window.open 中。如果您使用 PHP 之类的工具管理您的调用并使用路由框架,您可以以相同的方式进行设置,并且也可以从中调用您的 javascript 和 extjs。

    var OpenWindow = window.open('http://testsite.com/#popup', windowName, 'width=330,height=200,resizable=0');
    

    建议创建一个像这样的路由器:Extjs Routing Guide,如果没有使用后端系统,则从那里将组件置于页面上并将该 url 放置到您的弹出窗口中。在后端链接中创建新路由是最好的方法,但您仍然需要将 extjs 应用程序组件也调用到新页面中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-29
      • 1970-01-01
      • 2015-05-05
      • 2021-07-15
      • 2014-03-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多