el problema que tengo es el siguiente:
estoy tratando de leer un XML donde pretendo colocar todo el texto y cargarlos desde el extjs.
mis problemas se basan mas que todo en mi poco conocimiento del framework....
y son los siguientes
1-) el utilizar el Ext.data.Model para crear la estructura de los datos
2-) cargar los texto usando Ext.data.Store en la estructura creada previamente
3-) que el store lo pueda manejar de forma global
a continuación dejo el código:
el script:
Código:
el XMLExt.ns('app'); app={ lenguaje:function (){ Ext.define('registro', { extend: 'Ext.data.Model', fields: ['nombre','apellido','email','contrasenhia','fechaNac',]/*{ registro: [{name:'nombre', type: 'string'}, {name: 'apellido', type: 'string'}, {name: 'email', type: 'string'}, {name:'contrasenhia',type: 'string'}, {name:'fechaNac' ,type: 'string'} ]}*/ }); var lenguaje = new Ext.data.Store({ model: 'registro', storeId: 'lenguaje', proxy: { type: 'ajax', url : 'lengua/es.xml', reader: { type: 'xml', record: 'registro' } } }).load({ scope:this, callback:function () { app.interfaz (lenguaje) } }); }, interfaz:function (lenguaje) { formulario =Ext.create('Ext.form.Panel', { renderTo: Ext.getBody(), bodyPadding: 10, width: 'auto', waitTitle :'Procesando...', url: 'php/registroUsuario.php', items: [{ xtype: 'textfield', anchor: '100%', name: 'nombre', fieldLabel: Ext.data.StoreManager.lookup('lenguaje').getAt('0').get('nombre'), allowBlank: false },{ xtype: 'textfield', anchor: '100%', name: 'apellido', fieldLabel: Ext.data.StoreManager.lookup('lenguaje').getAt('0').get('apellido'), allowBlank: false },{ xtype: 'textfield', anchor: '100%', name: 'email', fieldLabel: Ext.data.StoreManager.lookup('lenguaje').getAt('0').get('email'), allowBlank: false , vtype: 'email' },{ inputType: 'password', anchor: '100%', xtype: 'textfield', name: 'contrasenhia', fieldLabel: Ext.data.StoreManager.lookup('lenguaje').getAt('0').get('contrasenhia'), allowBlank: false },{ xtype: 'datefield', fieldLabel: lenguaje.getAt('0').get('fechaNac'), name: 'feachaNacimiento', format: 'Y/m/d' }], buttons: [{ text: 'Procesar Registro', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { form.submit({ success: function(form, codigo) { if(codigo==403) { Ext.Msg.alert('Error', 'Disculpe este correo ya se encuentra registrado'); } }, failure: function(form, action) { } }); } } }] }); Ext.create('Ext.window.Window', { title: 'Registro', height: 300, width: 400, layout: 'fit', items: formulario }).show(); } } Ext.onReady(app.lenguaje);
Código:
cabe destacar que estoy tratando de hacer un registro de un usuario, y que en el html solo tengo el llamado de las librerias<?xml version="1.0" encoding="utf-8"?> <registro> <nombre> Nombre </nombre> <apellido> Apellido </apellido> <contrasenhia> Contraseña </contrasenhia> <email> Email </email> <fechaNac> Feacha de Nacimiento </fechaNac> <registroExitos> Usuario registrado con exito! </registroExitos> <correoDuplicado> El correo ingresado se encuentra registrado </correoDuplicado> </registro>
espero su ayuda gracias de ante mano
PostData: cualquier sugerencia sobre el código es bien recibida