关于layer.js 弹出框表单提交关闭父窗口出现表单提交失效的问题

       对于layer.js出现回调关闭父类的弹出层时,之前的表单的submit失效的问题:

     如何解决:网上有很多,有的是转为ajax的请求,在数据传输完再关闭父类的弹出层:

     下面是关闭父弹出层的办法:

        var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
        parent.layer.close(index);  // 关闭layer
 
      采用ajax这样可以,但是我做的是支付,要弹出页面才能支付,不能转换为ajax,怎么帮?后面我老大说:“你就不能晚点执行关闭吗”?这是一个想法试了一下就好了。
      附上代码:
        $("#myForm").submit();
        var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
        setTimeout(function () {
            parent.layer.close(index);  // 关闭layer
        },500);
        
        我还需要在关闭父类窗口后再打开一个窗口,则怎么解决,后面发现layer.js留有一个好的方式,那就是调用父窗口的方法,这个不受子窗口的影响,通过:parent.父类方法名(参数)这样就可以了,在父窗口中再调用layer.js的弹出就好了。

你可能感兴趣的:(web学习)