2010-07-22 11 views
0

lorsque vous tentez de remplir une GRILLE ENTIER en utilisant l'ajax d'une liste déroulante dans l'écouteur de sélection lorsque j'essaie de rappeler ou de recharger le magasin de données je reçois toujours les anciennes valeurs, au lieu de la les nouvelles. je dois obtenir les nouvelles valeurs, car en fonction du paramètre sélectionné dans la liste déroulante des champs de texte et l'éditeur d'autres rempliront avec ces données JSON lues à partir de serveur en utilisant ajax, accoding avec un autre ComboBox récupérer les données à distanceExt.data.Store ne recharge pas immédiatement

var cm = new Ext.grid.ColumnModel({ 
     defaults: { 
      sortable: true 
     }, 
     columns: [{ 
      id: 'ci', 
      header: 'Periodo Declarado', 
      dataIndex: 'ci', 
      width: 150, 
      editor: new fm.ComboBox({ 
       typeAhead: true, 
       triggerAction: 'all', 
       transform: 'PerDecl', 
       lazyRender: true, 
       listClass: 'x-combo-list-small', 
       mode:'local', 
       listeners:{ 
       expand: function (combo){ 
       //alert("asd"); 
      }, 
      collapse: function(combo,record,number){ 
      }, 
       select:function(v, params, record){ 
       ds_random_employee_data_active.remove(); 
       var varAnio2=v.getValue(); 
       var ds_random_employee_data_active2=ds_random_employee_data_active; 
       ds_random_employee_data_active2.load({ params: { anio: varAnio2 } }); 
       Ext.each(ds_random_employee_data_active2.data.items, function(record){ 
        alert(record.data.ut); 
       }); 
       //setTimeout("tres("+ v +"[]);",1000); 

      }} 



      }) 
     } 

* ********** autres colonnes ************************

Répondre

0

C'est parce qu'il charge de manière asynchrone.

+0

¿et comment pourrait je fais pour faire ça? Que suggérez-vous? – christian130

0

Si vous (re) chargez un magasin de données, l'appel est asynchrone. Par conséquent, toute action reposant sur les données mises à jour doit être effectuée dans le cadre d'un rappel. Vous pouvez gérer l'événement load du magasin pour ce faire. Voir ma réponse here pour un exemple.

1

[RESOLU] MERCI TOUT pour dire que je l'ai compris après quatre heures ou plus comme je l'ai fait semblait bmoeskau mais j'ai lu le post de bmoeskau après avoir eu la solution merci à tous

store.load ({params: {Anio: varanio}, rappel: function() {// vient ici la boucle ou une autre instruction }}) c'est un bon forum dans le chat

Questions connexes