我正在尝试从表单的加载事件中读取网格值。 ordersStore.load()将数据加载到网格中,但是我没有得到使用getAt返回的记录。有一个更好的方法吗?谢谢。

client_form.on({
   actioncomplete: function(form, action){
      if(action.type === 'load'){
      var suite_no = action.result.data.suite_no;
      ordersStore.baseParams.suite_no = suite_no;
      ordersStore.load();
      var orderRec = Ext.data.Record.create(['order_id', 'suite_no', 'merchant', 'track_no', 'invoice_no', {name:'total',type: 'float'},  {name:'weight',type: 'float'}, 'status']);
      var orderRec = ordersStore.getAt(0);
      Ext.Msg.alert('rec=', orderRec);
         }
    }
});

最佳答案

问题在于ordersStore.load()是异步的(文档说得通)。数据将在以后到达,并且在之后(您要查找的位置)立即不可用。

您需要添加一个“加载”事件处理程序。在该功能中,您可以检查数据,因为数据将在那时加载。

09-25 19:44