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 21/06/2011, 18h03   #1
Candidat au titre de Membre du Club
 
ben gr
Inscription : octobre 2010
Messages : 49
Détails du profil
Informations personnelles :
Nom : ben gr

Informations forums :
Inscription : octobre 2010
Messages : 49
Points : 10
Points : 10
Par défaut récupérer les valeurs de mon grid aprés édition

Bonjour,

J'ai crée un grid dont un champ est éditable par l'utilisateur. Je souhaiterais récupérer toutes les valeurs de ce champs une fois que l'utilisateur a terminé sa saisie.

Pour cela j'ai crée un bouton qui appel une fonction. Je souhaiterais obtenir dans la fonction l'ensemble des valeurs du champs, ainsi que le nombre de valeur du champs (count) afin de vérifier la validité des données saisies



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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
Ext.require([
    'Ext.grid.*',
    'Ext.data.*',
	'Ext.util.*',
    'Ext.state.*'
 
]);
 
function msg() {
					alert('toto') // c'est ici que j'aimerais obtenir les valeurs de ma grid modifiée
		};
 
Ext.onReady(function() {
 
 
    Ext.define('User', {    
		extend: 'Ext.data.Model',
		fields: [ {name : 'CHAMP1'},{name : 'CHAMP2'},{name : 'CHAMP3'}]
	});
 
 
 
    // create the data store
    var userstore = new Ext.data.Store({
	  id :'monstore',
      model:'User',
	  proxy: {
		type : 'ajax',
		url: 'creationjson.php',
		reader: {
			type:'json',
			root:'records'		
		}
	   },
		autoLoad : true
 
    });
 
    // create the Grid
    Ext.create('Ext.grid.Panel', {
		id : 'montableau',
		renderTo : 'tableauordre',
		selType: 'cellmodel',
        store: userstore,		
		height: 350,
        width: 600,
        title: 'tableau',
		plugins: [
			Ext.create('Ext.grid.plugin.CellEditing', {
				clicksToEdit: 1
			})
		],
 
        columns: [
            {
                text     : 'CHAMP1',              
                dataIndex: 'CHAMP1'
            },
            {
                text     : 'champ2',
                dataIndex: 'CHAMP2'
            },
            {
                text     : 'champ3',           
                dataIndex: 'CHAMP3',				
				field :{xtype:'numberfield',
				minValue: 1,
				maxValue: 999
				} 	
            }
 
        ],
 
		  dockedItems: [{
            xtype: 'toolbar',
            dock: 'bottom',
            ui: 'footer',
            layout: {
                pack: 'center'
            },
            items: [{
                minWidth: 80,
                text: 'Save',
				handler: msg
 
 
 
            },{
                minWidth: 80,
                text: 'Cancel'
            }]
        }]
 
 
 
    });
});
Merci,
renardchan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 13h42   #2
Candidat au titre de Membre du Club
 
ben gr
Inscription : octobre 2010
Messages : 49
Détails du profil
Informations personnelles :
Nom : ben gr

Informations forums :
Inscription : octobre 2010
Messages : 49
Points : 10
Points : 10
Je ne parviens pas à trouver la solution à mon problème. Finalement ce que je veux reviens un peu au même que cette example
Code :
http://dev.sencha.com/deploy/ext-4.0.1/examples/writer/writer.html
puisqu'au clic sur une ligne les valeurs de la grid sont récupérées writer form.

Cependant j'ai vraiment du mal à comprendre la logique et notamment en ce qui concerne le load.data () ainsi que la notion this.

Pour le moment la seule valeur que j'arrive à récupérer de mon grid c'est la hateur de l'étiquette des champs avec
Citation:
grid.getHeight ()
pour lire les données de la grid, s'agit-il de se tourner vers un grid.quelqueschose ou un data.quelquechose.? ou alors ai-je tout faux?

MErci,
renardchan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 21h11   #3
Membre chevronné
 
Avatar de kenny.kev
 
Homme
Inscription : janvier 2007
Messages : 574
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 27
Localisation : France, Indre et Loire (Centre)

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : janvier 2007
Messages : 574
Points : 688
Points : 688
Envoyer un message via MSN à kenny.kev
Pour voir comment ils ont fait il y a un lien sur l'exemple http://dev.sencha.com/deploy/ext-4.0...iter/writer.js

Je te conseil de regarder du coté de tes champs que tu édite (si tu as bien tout pris en compte comme les champs obligatoires, les types de caractères autorisés etc ...)

De plus je te conseil de faire une édition d'une ligne complète étant donné que tu dois tester le nombre de champs remplie, ce qui signifie que tu as des champs obligatoires.
Voir l'exemple : http://dev.sencha.com/deploy/ext-4.0...w-editing.html
kenny.kev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 23h10   #4
Candidat au titre de Membre du Club
 
ben gr
Inscription : octobre 2010
Messages : 49
Détails du profil
Informations personnelles :
Nom : ben gr

Informations forums :
Inscription : octobre 2010
Messages : 49
Points : 10
Points : 10
merci kev.

Justement c'est ce truc que j'arrive pas déchiffrer
Code :
http://dev.sencha.com/deploy/ext-4.0.1/examples/writer/writer.js
Je vais expliquer mon objectif et peut être qu'il y a une façon de faire car la je suis en train de devenir fou.

1. Mon Grid est alimenté par un Json
2. L'utilisateur saisi les données du champ3
3. L'ensemble des données du champ3 sont comparées les unes aux autres
4. Si les données sont validés alors j'envoie toutes les données des champs 1,2, 3 dans la base via un php (ajax pas nécessaire).

Ainsi je souhaite récupérer dans un array javascript l'ensemble de mes données et notamment celle du champ 3 aprés édition.
renardchan 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 22h58.


 
 
 
 
Partenaires

Hébergement Web