调试一个Ext打开的window窗口内嵌Iframe的form提交问题

一个奇怪的问题是:潜逃在iframe里的页面单独提交都是正常,放到iframe里面通过js调用在parent页面。提交总是被莫名其妙的杀掉。

确定js简单无错之后,继续看parent的处理逻辑,有这么一句.this.destory()。

问题最后才确定了,是打开iframe的页面本身世打开的window窗口,结果能提交submit执行后,直接关闭了打开的窗口。

结果form没有执行开始就被终结了parent,当然iframe的所有执行也都game over了。

毕竟iframe是异步的执行的,想当然的同步了。所以,作者再提交后就kill了父级。

线程的逻辑相同了。

要是非要这样做的话就只能等待机制了,要么就是回调机制,执行完成后触发执行相关其他。

省事期间直接,this.hide()了,只要不销毁窗口就OK了。

时间: 2024-10-07 23:52:18

调试一个Ext打开的window窗口内嵌Iframe的form提交问题的相关文章

Qt 子窗口内嵌到父窗口中(无边框附体show即可)

有时需要把一个子窗口内嵌进入父窗口当中. 我们可以这样做 1.新建一个QWidget 或者QDialog的子类 ClassA(父类为ClassB) 2.在新建类的构造函数中添加设置窗口属性 [cpp] view plaincopyprint? setWindowFlags(Qt::CustomizeWindowHint|Qt::FramelessWindowHint); 关闭默认的窗口标题提示以及没有边框的窗口. 3.在父窗口中调用. [html] view plaincopyprint? Cl

浏览器阻止新窗口(window.open或新窗的form提交)

在写js时,经常会出现浏览器会阻止用js写的window.open代码,但是,又不是每次都会阻止,它只会阻止特定情况下的window.open. 因为如果浏览器默认都阻止window.open代码是不现实的,所以观察chrome浏览器对window.open阻止情况的总结如下: 浏览器不会阻止用户主动发起的window.open方法:浏览器一般都会阻止非用户主动发起的window.open. 这里有一个问题,什么叫用户主动发起? 如下代码在执行过程中就是用户主动发起 <a href="wi

内嵌iframe

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="WapReport.Index" %> <html> <head runat="server"> <title></title> <script type="text/

ExtJs6内嵌iframe,nginx部署本地前台文件

/** * Created by Wwei on 2016/9/1. */ Ext.define('Admin.view.photo.CADMultiUploadForm', { extend: 'Ext.window.Window', xtype: 'cadmultiuploadform', title: 'CAD上传', requires: [ 'Admin.view.photo.CADMultiUploadFormController', 'Ext.form.Panel', 'Ext.fo

页面内嵌iframe 防止session过期

If you are trying to stop the session from timeing out all the time you can do this rather than increasing the session timeout. KeepAlive.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="KeepAlive.aspx.cs" In

Window 窗口类

窗口类 WNDCLASS 总结 总结为下面的几个问题: 1. 什么是窗口类 2. 窗口类的三种类型 3. 窗口类各字段含义 4. 窗口类的注册和注销 5. 如何使用窗口类,子类化.超类化是什么 下面分别描述: 1. 什么是窗口类? 窗口类定义了一系列属性,系统使用这些属性作为模板来创建出一个或多个 window (窗口). 每个窗口类都关联了一个窗口过程函数(window procedure), 由窗口类创建出的所有窗口(window), 都共享同一个窗口过程函数. 在进程中创建窗口之前必须先注

012.Delphi插件之QPlugins,多实例内嵌窗口服务

这个DEMO中主要是在DLL中建立了一个IDockableControl类,并在DLL的子类中写了具体的实现方法. 在主程序exe中,找到这个服务,然后调用DLL的内嵌方法,把DLL插件窗口内嵌到主程序中. 界面如下 DLL代码如下: unit Frm_Dll; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Co

web端,qq互联以及微信登录接入流程(内嵌页面)总结

前言 实习过程中,我参与了web版相册管家的开发,负责登陆页面的前后端逻辑. 需要在登陆页接入QQ互联和微信扫码登陆,而且是用页面内嵌方式.回头来看其实两者都有文档指导,步骤清楚,并不复杂.但是第一次接触难免踩坑,在此梳理如下,方便今后开发参考. QQ互联 开发文档 https://wiki.connect.qq.com/%E7%BD%91%E7%AB%99%E5%BA%94%E7%94%A8%E6%8E%A5%E5%85%A5%E6%B5%81%E7%A8%8B 应用申请 申请appid和ap

Android学习之——如何将GridView内嵌在ScrollView中

最近在做一个项目,有一个需求是在ScrollView中内嵌一个GridView. 刚开始,我是以为能直接内嵌在里面: 1 <ScrollView 2 android:layout_width="match_parent" 3 android:layout_height="0dp" 4 android:layout_weight="5.5"> 5 <GridView 6 android:id="@+id/gridView