jQuery MiniUI

标题: mini.open 多个页面 调用onCancel()无效 [打印本页]

作者: zhulpchina    时间: 2014-8-14 11:25:15     标题: mini.open 多个页面 调用onCancel()无效

我用mini.open依次打开新增、提示、确认3个页面,我想在确认页面点击取消按钮一次性关闭打开的3个页面,我在                ondestroy : function(action) {                        onCancel();
                }
中这样调用没有效果,请问下这个要怎么调用呢?open的都是heml文件



作者: dforce    时间: 2014-8-14 11:53:31

var t1=mini.open()   //新增页面
var t2=mini.open()   //提示页面
mini.open({
    url:确定页面,
    ondestroy:function(){
            t1.destroy()
            t2.destory()
     }
})
作者: zhulpchina    时间: 2014-8-14 12:00:28

我是在主页面上有个新增按钮,弹出新增界面,然后再在新增页面上有个按钮弹出提示页面,依次类推弹出确认页面的,版主的貌似满足不了
作者: dforce    时间: 2014-8-14 12:15:51

zhulpchina 发表于 2014-8-14 12:00
我是在主页面上有个新增按钮,弹出新增界面,然后再在新增页面上有个按钮弹出提示页面,依次类推弹出确认页 ...

新增页面
定义top["win1"]=window
function CloseWindow(){}
提示页面
定义top["win2]=window
function CloseWindow(){}
确认页面的ondestroy里
top["win1"].CloseWindow()
top["win2"].CloseWindow()

CloseWindow方法去我们例子去拷
作者: zhulpchina    时间: 2014-8-14 12:25:08

可否给和个连接?
function CloseWindow(action) {            
    if (action == "close" && form.isChanged()) {
        if (confirm("数据被修改了,是否先保存?")) {
            return false;
        }
    }
    if (window.CloseOwnerWindow)
            return window.CloseOwnerWindow(action);
    else
            window.close();            
}
是这样的?
作者: plusoft_admin    时间: 2014-8-14 13:13:09

zhulpchina 发表于 2014-8-14 12:25
可否给和个连接?
function CloseWindow(action) {            
    if (action == "close" && form.isChan ...

function CloseWindow(action) {            
     if (window.CloseOwnerWindow)
            return window.CloseOwnerWindow(action);
    else
            window.close();            
}
就下面那个,上面那个不需要
作者: zhulpchina    时间: 2014-8-14 14:11:12

定义top["win2]=window    这个怎么定义?直接var top["win2]=window;还是怎样?
作者: zhulpchina    时间: 2014-8-14 14:13:39

版主,这样的多页面关闭有例子么?
作者: dforce    时间: 2014-8-14 14:50:40

zhulpchina 发表于 2014-8-14 14:13
版主,这样的多页面关闭有例子么?

[attach]5014[/attach]

作者: zhulpchina    时间: 2014-8-16 16:12:42

谢谢版主,功能实现了。
作者: zhulpchina    时间: 2014-9-1 16:32:50

dforce 发表于 2014-8-14 14:50

版主,现在发现个问题,就是我调用mini.open()打开3层后,在第3层再打开一个页面,并且之前打开的3个页面我都close()掉,弹出的第4个页面无论用什么方法都关闭不了,只能点window自带的关闭按钮关闭?这个有解决方法么?
作者: dforce    时间: 2014-9-1 16:41:01

zhulpchina 发表于 2014-9-1 16:32
版主,现在发现个问题,就是我调用mini.open()打开3层后,在第3层再打开一个页面,并且之前打开的3个页面 ...

父页面后关掉, 只能点关闭按钮关闭
作者: zhulpchina    时间: 2014-9-1 16:47:24

dforce 发表于 2014-9-1 16:41
父页面后关掉, 只能点关闭按钮关闭

那要解决可以解决么?我们这边客户有这个需求。
作者: zhulpchina    时间: 2014-9-1 16:53:28

dforce 发表于 2014-9-1 16:49
要么父页面别关掉,要么按右上角关闭

是这样的,客户的需求要求前边的关闭掉,不能留着,就是不能回退操作,跳到第4个页面进行单独的操作。有没有办法可以关掉?我们这边几乎所有的方法都用过的。
作者: factory    时间: 2014-9-1 17:10:11

zhulpchina 发表于 2014-9-1 16:53
是这样的,客户的需求要求前边的关闭掉,不能留着,就是不能回退操作,跳到第4个页面进行单独的操作。有 ...

试试打开mini.open的时候,

var win = mini.open({...})

然后把这个win传到子页面, 子页面  调用控件的destroy()来销毁掉mini.open窗体
试试
作者: zhulpchina    时间: 2014-9-1 17:31:32

factory 发表于 2014-9-1 17:10
试试打开mini.open的时候,

var win = mini.open({...})

不行,它仍会进入到cancel(),但是会执行    if (window.CloseOwnerWindow)
            return window.CloseOwnerWindow(action);
    else
            window.close();     里面的return window.CloseOwnerWindow(action);这个句,但
页面没有关闭掉
作者: zhulpchina    时间: 2014-9-1 20:50:05

zhulpchina 发表于 2014-9-1 17:31
不行,它仍会进入到cancel(),但是会执行    if (window.CloseOwnerWindow)
            return window.CloseOw ...

子页面  调用控件的destroy()来销毁掉mini.open窗体,版主我想问下你是怎样调用这个destroy()的?可以提供一个例子么?
作者: zhulpchina    时间: 2014-9-1 20:52:03

zhulpchina 发表于 2014-9-1 20:50
子页面  调用控件的destroy()来销毁掉mini.open窗体,版主我想问下你是怎样调用这个destroy()的?可以提 ...

但是为什么点击页面右上角的X就能关闭掉页面呢?
作者: felt    时间: 2014-9-2 10:51:09

zhulpchina 发表于 2014-9-1 20:52
但是为什么点击页面右上角的X就能关闭掉页面呢?

把弹出方法都写在父页面
其他页面弹出都用top["win"]调用父页面的弹出
这样就可以用CloseWindow来关闭




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2