jQuery MiniUI

 找回密码
 立即注册
查看: 5611|回复: 4
打印 上一主题 下一主题

求教mini.open 的关闭事件 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-10-17 11:11:28 |只看该作者 |倒序浏览
http://www.miniui.com/demo/#src=datagrid/datagrid.html 这个示例中 关闭表单时如果那个提示是如何被调用的:function CloseWindow(action) {                        if (action == "close" && form.isChanged()) {
                if (confirm("数据被修改了,是否先保存?")) {
                    return false;
                }
            }
            if (window.CloseOwnerWindow) return window.CloseOwnerWindow(action);
            else window.close();            
        }
也就是说为何点“x”的时候会执行上面的代码 我自己写的不行,在父页面没找到把这个函数绑定到关闭事件的代码啊



Rank: 8Rank: 8

沙发
发表于 2013-10-17 12:14:19 |只看该作者
如果你需要点击自定义的取消按钮跟右上角的X,执行相同的方法,比如需要确认一些信息,那么你可以把方法名固定写成CloseWindow(),当你点击X的时候,我们内部会去找你是否有CloseWindow(),如果有,就执行这个方法,如果没有,就直接执行window.CloseOwnerWindow关闭.但是这样的话,你的某个方法中的一些确认代码就不会执行到了

Rank: 2

板凳
发表于 2013-10-17 12:40:03 |只看该作者
了解了 感谢

Rank: 2

地板
发表于 2013-10-17 13:03:55 |只看该作者
factory 发表于 2013-10-17 12:14
如果你需要点击自定义的取消按钮跟右上角的X,执行相同的方法,比如需要确认一些信息,那么你可以把方法名固定 ...

似乎CloseWindow中的mini.alert mini.confirm这样的确认方法不会被执行,只能用alert和confirm
并且去掉 if (window.CloseOwnerWindow) return window.CloseOwnerWindow(action);
            else window.close(); 点击“x”窗口依然被关闭(点击“取消”调用CloseWindow不会)

Rank: 8Rank: 8

5#
发表于 2013-10-17 13:23:02 |只看该作者
bittersweet 发表于 2013-10-17 13:03
似乎CloseWindow中的mini.alert mini.confirm这样的确认方法不会被执行,只能用alert和confirm
并且去掉  ...

你可以在mini.alert()或者mini.confirm的回调中执行你需要执行的代码

因为JS模拟的弹出框都是无法阻塞住下面的代码执行的,这跟alert() 不一样

Archiver|普加软件

GMT+8, 2025-7-10 03:02 , Processed in 1.054082 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部