Cómo actualizar el formulario ExtJs Grid

Tengo el siguiente escenario,

  1. Formulario de entrada de usuario para ingresar usuarios.
  2. Usuario de búsqueda Forma con Cuadrícula y Editar opción para actualizar los valores del usuario. Cuando hago clic en el ícono de edición en la cuadrícula, la página debe redirigir a Entrada de usuario formulario con valores rellenados en el formulario para la actualización.

Usuario de búsqueda

var searchUsers = new Ext.FormPanel({
                renderTo: "searchUsers",
                frame: true,            
                title: 'Search Users',
                bodyStyle: 'padding:5px',           
                width: 900,
                items:[{
                    xtype:'textfield',
                    fieldLabel: 'Username',
                    name: 'userName'            
                },{
                    xtype:'textfield',
                    fieldLabel: 'First Name',
                    name: 'firstName'
                },{
                    xtype:'textfield',
                    fieldLabel: 'Last Name',
                    name: 'lastName'
                },
                {
                    xtype: 'button',
                    text: 'Search',
                    listeners: {
                        click: function(){
                            Ext.Ajax.request({
                                method:'GET',
                                url : url+'/lochweb/loch/users/getUser',
                                params : searchUsers.getForm().getValues(),
                                success : function(response){
                                    //console.log(response);
                                    //swapStrore();
                                }
                            });
                        }                       
                    }
                },{
                    xtype: 'button',
                    text: 'Cancel',
                    listeners: {
                        click: function(){
                             window.location = url+'/lochportal/viewSuccessForm.do';
                        }                       
                    }
                },              
                grid = Ext.create('Ext.grid.Panel', {                   
                        //plugins: [rowEditing],
                        width: 900,
                        height: 300,
                        frame: true,                        
                        store: store,
                        iconCls: 'icon-user',
                        columns: [{
                            text: 'ID',
                            width: 40,
                            sortable: true,
                            dataIndex: 'id'
                        }, 
                        {
                            text: 'Name',
                            flex: 1,
                            sortable: true,
                            dataIndex: 'name',
                            field: {
                                xtype: 'textfield'
                            }
                        },
                        {
                            text: 'FirstName',
                            flex: 1,
                            sortable: true,
                            dataIndex: 'firstName',
                            field: {
                                xtype: 'textfield'
                            }
                        },
                        {
                            text: 'LastName',
                            flex: 1,
                            sortable: true,
                            dataIndex: 'lastName',
                            field: {
                                xtype: 'textfield'
                            }
                        },
                        {
                            text: 'Gender',
                            flex: 1,
                            sortable: true,
                            dataIndex: 'gender',
                            field: {
                                xtype: 'textfield'
                            }
                        },
                        {
                            text: 'Email',
                            flex: 1,
                            sortable: true,
                            dataIndex: 'email',
                            field: {
                                xtype: 'textfield'
                            }
                        },
                        {
                             xtype: 'actioncolumn',
                             width: 100,
                             items:[{
                                    icon   : '/lochportal/extJS/resources/themes/images/access/window/edit.gif',  // Use a URL in the icon config
                                    tooltip: 'Sell stock',
                                    handler: function(grid, rowIndex, colIndex) {
                                        var rec = store.getAt(rowIndex);
                                        //alert("Sell " + rec.get('id'));
                                        updateUsers(rec.get('id'));
                                    }
                                }]

                        }]
                    })]     
            });

Crear usuario

var userForm = new Ext.FormPanel({      
        renderTo: "userCreation",
        frame: true,
        title: 'Create New User',
        bodyStyle: 'padding:5px',           
            width: 500,
        items: [{
                xtype: 'textfield',
                fieldLabel: 'UserName',
                name: 'userName',
                allowBlank:false
                }{
                xtype:'combo',
                fieldLabel: 'Role',
                name: "role",
                id: "role",
                    queryMode:'local',
                store:role,
                displayField: 'rolename',
                valueField: 'id',            
                emptyText: "Select",
                editable: false,
                allowBlank:false
                    },{
                xtype: 'textfield',
                fieldLabel: 'FirstName',
                name: 'firstName',
                vtype : 'alpha',
                allowBlank:false
                },{
                xtype: 'textfield',
                fieldLabel: 'MiddleName',
                name: 'middleName',
                vtype : 'alpha'             
                },{
                xtype: 'textfield',
                fieldLabel: 'LastName',
                name: 'lastName',
                vtype : 'alpha'
                },{
                xtype: 'textfield',
                fieldLabel: 'Email',
                name: 'email',
                vtype: 'email',
                allowBlank:false
                }
    });

preguntado el 03 de mayo de 12 a las 08:05

1 Respuestas

Debe comenzar leyendo las guías de Sencha sobre su arquitectura MVC: http://docs.sencha.com/ext-js/4-0/#!/guide/getting_started

La aplicación ExtJs generalmente tiene solo una página y toda la navegación se realiza internamente sin cambiar la dirección de la ubicación.

contestado el 03 de mayo de 12 a las 13:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.