Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Ext JS / Sencha
Ext JS / Sencha Ext JS / Sencha Forum d'entraide sur les frameworks Ext JS et Sencha. Avant de poster : FAQ ExtJS / Sencha, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/10/2011, 17h30   #1
Invité régulier
 
Inscription : octobre 2006
Messages : 49
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 49
Points : 6
Points : 6
Par défaut grid dynamique - chargement des données

Bonjour.

je souhaite créer un grid dynamique. Mon problème c'est que les données se charge correctement mais ne s'affiche pas dans le grid, par contre j'ai bien les titres des colonnes.
Voici mon code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
 
//Définition modèle de colonnes     
function createModel(modelName, p_reponse) {
    var oLigne = p_reponse.getElementsByTagName("ligne");
    var iNbColonne = oLigne[0].childNodes.length;
    var fields = new Array(iNbColonne);
    for(var i = 0;i < iNbColonne; i++){
      fields[i] = {
            name: oLigne[0].childNodes[i].nodeName,
            type: "string"
      };
    }
    //alert(fields);
    Ext.define(modelName, {extend: "Ext.data.Model", fields: fields});
}
 
 
function createRecord(modelName) {
    var record = Ext.create(modelName);    
    return record;
}
 
//Création colonne du grid (selon le modèle)
function createColumns(p_reponse) {
    var oLigne = p_reponse.getElementsByTagName("ligne");
    var iNbColonne = oLigne[0].childNodes.length;
    var newColumns = new Array(iNbColonne);
    for(var i = 0;i < iNbColonne; i++){
      newColumns[i] = {
            header: oLigne[0].childNodes[i].nodeName,
            dataIndex: oLigne[0].childNodes[i].nodeName,
            width: 60
      };
    }
    return newColumns;
}
 
Ext.Ajax.request({
  url: ''/report.php'',
  method:''POST'',
  //params:{dateDbt:sDateDbt,dateFin:sDateFin,deposant:iDeposant},
  success: function(result, request){
    alert("Chargement ok");
    var doc;
    if (window.ActiveXObject) {
        var doc = new ActiveXObject("Microsoft.XMLDOM");
        doc.async = "false";
        doc.loadXML(result.responseText);       
    } else {
        var doc = new DOMParser().parseFromString(result.responseText,"text/xml");
    } 
 
    createModel("SomeModel", doc);
 
    var xmlReader  = Ext.create("Ext.data.XmlReader",{model:"SomeModel",record:"ligne",totalRecords:"@total"});
 
    Ext.create("Ext.grid.Panel", {
        id:"gidReport",
        width: 950,
        height: 700,
        store: Ext.create("Ext.data.Store",{
            model: "SomeModel",
            //buffered: true,           
            autoLoad:true,
            reader:xmlReader,
            data:[createRecord("SomeModel"),{data:doc}]
        }),
        autoScroll: true,
        columns:createColumns(doc),
        renderTo:Ext.getBody()
    }).show();    
  },
  failure: function(result, request){   
    alert("Erreur : "+result.responseText);           
  }
});
Comment faire pour que les données s'affiche dans le grid ?

Merci pour vos réponses.
romuald07 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2011, 17h44   #2
Membre confirmé
 
Homme
Étudiant
Inscription : mai 2007
Messages : 251
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 35
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2007
Messages : 251
Points : 243
Points : 243
Bonjour,

Utilise tu Firefox avec firebug ?
Si oui vois tu le JSON retourné ?
Ton JSON est-il valide ? Pour le savoir je te conseil ce site :
http://jsonlint.com/

As tu testé avec des exemples simple proposé sur le site ?
abraxis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h05.


 
 
 
 
Partenaires

Hébergement Web