2010-06-10 5 views
1

S'il vous plaît aidez-moi avec ce problème. Je suis nouveau dans les extensions et j'ai besoin d'un peu d'aide. J'ai ce codeextJs Json Reader

Ext.onReady(function() { 
var datesStore = new Ext.data.JsonStore({ 
    start : 'StartTableDate', 
    end : 'FinishTableDate', 
      autoLoad : true, 
      proxy : new Ext.data.HttpProxy({ 
       url : 'dates.json', 
       method:'GET' 
      }), 
      fields : [ 
       // 2 mandatory fields 
       {name:'StartTableDate'}, 
       {name:'FinishTableDate'} 
      ] 
     }); 

// i want to pass to variable start si end the values from JSON 
var start = 'StartTableDate'; 
var end = 'FinishTableDate'; 
+0

Alors, quelle est exactement la question? –

Répondre

2

Si je vous comprends bien, vous voulez obtenir les valeurs du premier enregistrement d'un JsonStore et les affecter à des variables. Si c'est le cas, alors je pense que vous voulez un gestionnaire d'événements:

var datesStore = new Ext.data.JsonStore({ 
      proxy : new Ext.data.HttpProxy({ 
       url : 'dates.json', 
       method:'GET' 
      }), 
      fields : ['StartTableDate','EndTableDate'] 
     }); 
datesStore.on('load',function(dataStore,records,options) { 
    if (records.length > 0) { 
     var start = records[0].get('StartTableDate'); 
     var end = records[0].get('FinishTableDate'); 
    } 
},this); 
+0

Ok, c'est une bonne réponse ... mais j'ai une question stupide. Après votre code si j'écris Ext.MessageBox.alert ('Value1', start); il affiche une valeur vide. Comment puis-je obtenir les valeurs commencent et se terminent? Merci – tinti

+0

L'alerte est-elle située après le gestionnaire d'événements ou à l'intérieur? Il aurait besoin d'être à l'intérieur. Essayez le point d'arrêt dans Firebug dans le gestionnaire d'événements pour voir quelle est la valeur de 'records'. –

+0

L'alerte est en dehors du gestionnaire d'événements. Donc vous dites que les variables de début et de fin ont des valeurs non vides seulement dans le gestionnaire? Je veux utiliser les valeurs en dehors de ce gestionnaire ... c'est possible? Merci – tinti