博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Extjs之window异步拦截关闭事件beforeClose的实现
阅读量:6571 次
发布时间:2019-06-24

本文共 1673 字,大约阅读时间需要 5 分钟。

/**  * Created by jwj on 2015/4/13.  * 增强Ext.panel.Panel(window,panel,form等界面组件)的beforeClose事件,以实现异步拦截  */ Ext.define('Ext.ux.overrides.panel.BeforeClose4async', {
override: 'Ext.panel.Panel', /** * @event beforeclose * 以实现异步拦截事件(beforeclose) * @param this {Ext.panel.Panel} * @param handlers {obj} * @example * listeners: {
* beforeClose: function (sender, handlers) {
* handlers.wait = true; * //注意这里只是做了个弹出窗口示例,ajax异步拦截关闭事件道理类似 * Ext.MessageBox.confirm('提示:', '您确认要关闭此窗口吗?', function (btn) {
* if (btn === 'yes') {
* handlers.process(); * } else {
* handlers.cancel(); * } * }); * } *} */ close: function () {
/*if (this.fireEvent('beforeclose', this) !== false) {
this.doClose(); }*/ var me = this, handled = false, handlers = {
wait: false, process: function () {
me.doClose(); handled = true; }, cancel: function () {
handled = true; } }, performOperation = me.fireEvent('beforeclose', me, handlers); if (handlers.wait) {
return; } if (performOperation !== false) {
if (!handled) {
handlers.process(); } } return performOperation; } }); 备注:在Extjs5.1下测试通过,自定义异步拦截事件都可参照此例进行实现。

转载于:https://www.cnblogs.com/jiawenjun/p/6593788.html

你可能感兴趣的文章
LOOPS
查看>>
今日小结 4.13
查看>>
Hadoop完全分布式环境搭建(三)——基于Ubuntu16.04安装和配置Java环境
查看>>
Jquery animate动画效果 使用变量替换key的方法
查看>>
我对于大学软件专业的一些看法
查看>>
MFC按钮特效
查看>>
ubuntu 安装jdk7小结(转载)
查看>>
WPF bmp和二进制转换
查看>>
Delphi 的运算符列表
查看>>
利用mimikatz破解远程终端凭据,获取服务器密码
查看>>
原型链的理解
查看>>
SSAO 实装·
查看>>
我的software
查看>>
Leetcode 827. Making A Large Island
查看>>
本置顶为待解决问题。
查看>>
本大神教你用PHP把文本内容转换成16进制数字,进行加密
查看>>
iOS开发-xCode6(iOS 8)中应用程序图标和启动页面设置
查看>>
python之sys模块详解
查看>>
ios 控制器的生命周期
查看>>
C#动态代理
查看>>