IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ext JS / Sencha Discussion :

[EXTJS 4.0.7] Grid, cellediting et AJAX


Sujet :

Ext JS / Sencha

  1. #1
    Membre habitué Avatar de magicbisous-nours
    Inscrit en
    Octobre 2005
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 277
    Points : 177
    Points
    177
    Par défaut [EXTJS 4.0.7] Grid, cellediting et AJAX
    bonjour à tous,
    Je cherches à faire une grid paginée avec EXTJS 4.0.7 dont l'utilisateur peut modifier les valeurs des cellules.

    Je n'arrive pas à trouver comment passer les nouvelles valeurs saisies par l'utilisateur en AJAX à mon controller... J'ai bien essayé l'événement validateedit mais je n'arrive à récupérer que la valeur AVANT édition.

    Voici ma déclaration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    var store;
    var grid;
    Ext.onReady(function(){
        Ext.tip.QuickTipManager.init();
     
        Ext.define('ressources', {
            extend: 'Ext.data.Model',
            fields: [
                 {name: 'id', type: 'number'}, 'name', 'description'
            ]
        });
     
        // create the Data Store
        store = Ext.create('Ext.data.Store', {
            pageSize: <?php echo $this->pageSize; ?>,
            model: 'ressources',
            remoteSort: true,
            proxy: {
                type: 'ajax',
                url: '/gestion/acces/ajaxressources/application/<?php echo $this->application; ?>',
                reader: {
                    root: 'rows',
                    totalProperty: 'count'
                }
            },
            sorters: [{
                property: 'name',
                direction: 'ASC'
            }]
        });
     
        grid = Ext.create('Ext.grid.Panel', {
            store: Ext.data.StoreManager.lookup(store),
            disableSelection: true,
            loadMask: {showMask: true, msg: 'Chargement en cours...'},
            columns:[{
                text: "id",
                xtype: 'numbercolumn',
                hidden: true
            },{
                text: "Nom",
                dataIndex: 'name',
                width: '10%',
                sortable: true,
                editor: {
                    xtype: 'textfield',
                    allowBlank: false
                }
            },{
                text: "Description",
                dataIndex: 'description',
                width: '90%',
                sortable: true,
                editor: {
                    xtype: 'textfield',
                    allowBlank: false
                }
            }],
            selType: 'rowmodel',
            plugins: [
                Ext.create('Ext.grid.plugin.RowEditing', {
                    clicksToEdit: 1
                })
            ],
            // paging bar on the bottom
            bbar: Ext.create('Ext.PagingToolbar', {
                store: store,
                displayInfo: true,
                displayMsg: 'Affichage des ressources {0} - {1} sur {2}',
                emptyMsg: "Pas de ressources à afficher",
            }),
            renderTo: 'listeRessources'
        });
        store.load();
     
        grid.on('validateedit', function(editor, e) {
             Ext.Ajax.request({
                url:'/gestion/acces/ajaxmodifressource',
                params:{
                    ressourceId: e.record.data.id,
                    ressourceName: e.record.data.name,
                    ressourceDesc: e.record.data.description
                },
          	});
        });
    });
    PS : actuellement c'est une grid avec le plugin rowEditing mais j'ai essayé cellEditing avec le succès que l'on connais avant.
    [/HS]

    J'adorerai changer le monde, mais pas moyen de mettre la main sur le code source

  2. #2
    Membre habitué Avatar de magicbisous-nours
    Inscrit en
    Octobre 2005
    Messages
    277
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 277
    Points : 177
    Points
    177
    Par défaut
    C'est bon j'ai trouvé : il suffisait d'utiliser l'événement edit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    grid.on('edit', function(editor, e) {
             Ext.Ajax.request({
                url:'/gestion/acces/ajaxmodifressource',
                params:{
                    ressourceId: e.record.data.id,
                    ressourceName: e.record.data.name,
                    ressourceDesc: e.record.data.description
                },
          	});
        });
    [/HS]

    J'adorerai changer le monde, mais pas moyen de mettre la main sur le code source

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Grid Expander Extjs 2
    Par noussa_nouha dans le forum Ext JS / Sencha
    Réponses: 1
    Dernier message: 01/07/2008, 16h27
  2. [AJAX] objet grid ajax
    Par franfr57 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 27/02/2008, 07h01
  3. [AJAX] [ajax struts datagrid]faire grid javacscript avec ajax
    Par Wessim dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/12/2006, 10h18
  4. [Dojo] Simple data grid sans appel Ajax
    Par Den's dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 14/12/2006, 08h23
  5. [AJAX] Connaissez vous un Grid éditable et gratuit
    Par arnolem dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 27/07/2006, 11h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo