
04/06/2011, 17:31
|
| | Fecha de Ingreso: octubre-2009
Mensajes: 23
Antigüedad: 15 años, 6 meses Puntos: 0 | |
no logro pasar los datos al Extjs con XML buenas primero que todo gracias por tomarse la molestia de leer esto
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:
Ext.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);
el XML
Código:
<?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>
cabe destacar que estoy tratando de hacer un registro de un usuario, y que en el html solo tengo el llamado de las librerias
espero su ayuda gracias de ante mano
PostData: cualquier sugerencia sobre el código es bien recibida |