Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Extjs-在窗口刷新后重置事件_Javascript_Extjs_Extjs4 - Fatal编程技术网

Javascript Extjs-在窗口刷新后重置事件

Javascript Extjs-在窗口刷新后重置事件,javascript,extjs,extjs4,Javascript,Extjs,Extjs4,我有一个带有自己控制器的Ext.window.window(第1个,共2个)。此窗口有一个按钮,用于将行添加到网格中。它添加的行数与保存ajax调用后触发的事件数直接相关 如何在每次打开窗口时重置这些事件?成功保存后,我正在初始化窗口 该窗口经常使用,需要关闭操作:“隐藏” 代码 var controller = this, // Window Controller activeRec = controller.activeRecord, store = Ext.getStore

我有一个带有自己控制器的
Ext.window.window
(第1个,共2个)。此窗口有一个按钮,用于将行添加到网格中。它添加的行数与
保存
ajax调用后触发的
事件数直接相关

如何在每次打开窗口时重置这些事件?成功保存
后,我正在初始化窗口

该窗口经常使用,需要关闭操作:“隐藏”

代码

var controller = this, // Window Controller
    activeRec = controller.activeRecord,
    store = Ext.getStore('Manage'), // Store for the window
    window = Ext.getCmp('window'), // window component
    submitMask = new Ext.LoadMask({target: window, msg: 'Saving data...'}),
    saveButton = Ext.ComponentQuery.query('#am_save_button');

Ext.Ajax.request({
    url: '/save',
    method: 'POST',
    jsonData: jsonChanges,
    scope: this,
    success: function (response, batch) {
        store.load();
        window.record = activeRec;
        controller.init();
        saveButton[0].disable();
        submitMask.hide();
    },
    [...]
});
dispatch
​
<this>: (optimized away)
​
args: (2) […]
​
arguments: Arguments
​
bus: (optimized away)
​
controllers: {…}
​
ev: "click"
​
event: {…}
​
events: (4) […] <-- needs to be '1'
​
i: 0
​
id: "AccountsManagementController"
​
ln: 4
​
me: {…}
​
selector: "accounts_management_grid button[name=\"am_add_account\"]"
​
selectors: {…}
​
target: {…}
控制台

var controller = this, // Window Controller
    activeRec = controller.activeRecord,
    store = Ext.getStore('Manage'), // Store for the window
    window = Ext.getCmp('window'), // window component
    submitMask = new Ext.LoadMask({target: window, msg: 'Saving data...'}),
    saveButton = Ext.ComponentQuery.query('#am_save_button');

Ext.Ajax.request({
    url: '/save',
    method: 'POST',
    jsonData: jsonChanges,
    scope: this,
    success: function (response, batch) {
        store.load();
        window.record = activeRec;
        controller.init();
        saveButton[0].disable();
        submitMask.hide();
    },
    [...]
});
dispatch
​
<this>: (optimized away)
​
args: (2) […]
​
arguments: Arguments
​
bus: (optimized away)
​
controllers: {…}
​
ev: "click"
​
event: {…}
​
events: (4) […] <-- needs to be '1'
​
i: 0
​
id: "AccountsManagementController"
​
ln: 4
​
me: {…}
​
selector: "accounts_management_grid button[name=\"am_add_account\"]"
​
selectors: {…}
​
target: {…}
调度
​
:(优化了)
​
args:(2)[…]
​
论点:论点
​
巴士:(优化了)
​
控制器:{…}
​
ev:“点击”
​
事件:{…}
​

事件:(4)[…]我简化了我的
成功
,现在它正在工作。怀疑是
init
调用造成的:

    success: function (response, batch) {
        window.record = activeRec;
        saveButton[0].disable();
        submitMask.hide();
    },