Thank you for reporting this bug. We will make it our priority to review this report.
  1. #1
    Sencha User
    Join Date
    Jul 2011
    Posts
    2
    Vote Rating
    0
    Dmitry Ovsianko is on a distinguished road

      0  

    Default Undefined fields'ownerCt inside deferred calls

    Undefined fields'ownerCt inside deferred calls


    REQUIRED INFORMATION


    Ext version tested:
    • Ext 4.02

    Browser versions tested against:
    • Chrome 12.0.742.122 for Windows

    Description:
    • When executing Ext.form.Basic.submit(), its field's ownerCts appear undefined, wich lead to js errors.

    Steps to reproduce the problem:
    • Take the MVC demo described in ExtJs 4.0.2 docs;
    • Redefine the updateUser handler so that it calls submit() directly (see the code below);
    • Open the edit form and press the "Save" button

    The result that was expected:
    • A valid HTTP request to the required URL

    The result that occurs instead:
    • Uncaught TypeError: Cannot read property 'id' of undefined at HashMap.js:134

    Test Case:

    Code:
     updateUser: function(button) {    
      var win = button.up('window');
       win.down('form').getForm().submit ({
         url: '/',
         success: function(form, action) {},
         failure: function(form, action) {}
       });
       win.close();	    
     },
    HELPFUL INFORMATION

    Debugging already done:
    • when iterating over getFields() in batchLayouts, the fields seem OK but their ownerCt are undefined — which lead to the actual error;
    • every getFields() iteration sees undefined ownerCt when called inside Ext.defer(). Without deferring, ownerCt are defined.
    • replacing "Ext.defer(action.run, 100, action)" with just "action.run()" in Ext.form.Basic.doAction() seem to fix the problem.

    Possible fix:
    • maybe it worth to avoid Ext.defer in Ext.form.Basic.doAction?

    Additional CSS used:
    • only default ext-all.css

    Operating System:
    • WinXP Pro (5.1.2600)

  2. #2
    Sencha User
    Join Date
    Oct 2010
    Posts
    23
    Vote Rating
    0
    cmygeHm is on a distinguished road

      0  

    Default


    In window declaration write
    closeAction: 'close'
    and all will be good!
    Sorry for my English.

  3. #3
    Sencha User
    Join Date
    Jul 2011
    Posts
    2
    Vote Rating
    0
    Dmitry Ovsianko is on a distinguished road

      0  

    Default


    Thank you, this worked out, but had a stack overflow as side effect.

    closeAction: 'hide' seems to be the right solution.

  4. #4
    Sencha Premium Member vadimv's Avatar
    Join Date
    Sep 2010
    Location
    Chisinau, Moldova
    Posts
    647
    Vote Rating
    25
    vadimv will become famous soon enough vadimv will become famous soon enough

      0  

    Default


    any fix to this issue, I get the error on both actions: "destroy" and "hide"

  5. #5
    Sencha Premium Member vadimv's Avatar
    Join Date
    Sep 2010
    Location
    Chisinau, Moldova
    Posts
    647
    Vote Rating
    25
    vadimv will become famous soon enough vadimv will become famous soon enough

      0  

    Default


    was using closeAction: 'hide' to form.Panel instead off window, now is for window and works. But I don't want to hide it, why "destroy" throws :
    • Uncaught TypeError: Cannot read property 'id' of undefined

    • #6
      Sencha User
      Join Date
      Apr 2011
      Posts
      1
      Vote Rating
      0
      zarat is on a distinguished road

        0  

      Default


      it's good error)))
      you can not close window until submit() not done!
      use code like this


      in controller
      Code:
      doFilter: function() {
             var wnd = this.getWindowFilter();
             var formFilter = wnd.down('form');
             if (formFilter.getForm().isValid()) {
                  wnd.getEl().mask();
                  formFilter.submit({
                      scope: this,
                      method: 'POST',
                      url: './store/filter/setFilter.php',
                      success: function(form, action) {
                          var wnd = this.getWindowFilter();
                          wnd.getEl().unmask();
                          this.getGridTiming().getStore().load();
                          //Ext.Msg.alert('Debug', 'Success');
                          wnd.close();
                      },
                      failure: function(form, action) {}
                  });
              }
          }

    Thread Participants: 3

    film izle

    hd film izle

    film sitesi

    takipci kazanma sitesi

    takipci kazanma sitesi

    güzel olan herşey

    takipci alma sitesi

    komik eğlenceli videolar