2010-07-27 5 views
0

Как получить обновленные записи, я переопределяю функцию Ok, чтобы сохранить изменения в форме. 1.i просто переопределяет функцию ok ok, но не может получить измененную запись.ok кнопка в записи Форма плагина в extjs

Ext.override(Ext.ux.grid.RecordForm , { 
    onOK:function() { 

      updateRecord1(); 
     } 

}); 
function updateRecord1() {//alert('record'); 
var records =store.getModifiedRecords(); 
     if(!records.length) { 
      return; 
     } 
     var data = []; 
     Ext.each(records, function(r, i) { 
      var o = r.getChanges(); 
      if(r.data.newRecord) { 
       o.newRecord = true; 
      } 
      o[idName] = r.get(idName); 
      data.push(o); 
     }); 
     var o = { 
      url:gl_acc.php 
      ,method:'post' 
      ,params:{ 
       record:record.get('id'), 
       task:'update' 
      } 
     }; 
     Ext.Ajax.request(o); 
    } // eo function commitChanges 

ответ

0

var records = this.store.getModifiedRecords();

+0

я переопределение OnOK функцию звукозаписывающей формы плагин Саки в ExtJS, я не в состоянии принести обновленную запись. – mayuri

+0

Я быстро взглянул на источник, и кажется, что для получения магазина вам нужно обратиться к нему через 'this.store' или' this.grid.store'. Если у вас нет глобальной переменной, называемой 'store', вызов' store.getModifiedRecords(); 'ничего не сделает (за исключением исключения исключения) – Mchl

+0

ya ... когда я пытаюсь предупредить record.length, он показывает нуль .. вот что я хочу знать, как получить обновленную запись – mayuri