Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Extjs Cargando datos desde una BD a un formulario

Estas en el tema de Extjs Cargando datos desde una BD a un formulario en el foro de Frameworks JS en Foros del Web. estimados llevo un rato tratando de cargar los datos de una base de datos en un formulario echo en Extjs pero no he podido he ...
  #1 (permalink)  
Antiguo 27/02/2009, 06:22
 
Fecha de Ingreso: febrero-2005
Mensajes: 40
Antigüedad: 19 años, 10 meses
Puntos: 0
Extjs Cargando datos desde una BD a un formulario

estimados

llevo un rato tratando de cargar los datos de una base de datos en un formulario echo en Extjs pero no he podido
he probado varias formas sin tener exito, tambien he visto los ejemplos de el foro oficial pero sigo sin resultados
les dejo el codigo a ver si alguien me puede orientar

Codigo del Formulario:
Código:
	var estado = new Ext.form.ComboBox({
		typeAhead: true,
		triggerAction: 'all',
		fieldLabel: 'Estado',
		id: 'estado',
		name: 'estado',
		store: storeEstadoai,
		displayField:'estado',
		valueField: 'estado',
		mode: 'local',
		emptyText:'Cambiar Estado',
		allowBlank:false,
	    listeners:{
	   		select: updateEstadoai}
	});	
	
	var codproyecto = new Ext.form.TextField({
		id: 'codproyecto',
		name: 'codproyecto',
		fieldLabel: 'Codigo Proyecto',
        allowBlank:false
	});
	var descripcion = new Ext.form.TextField({
		id:  'descripcion',
		name: 'descripcion',
		fieldLabel: 'Descripcion Proyecto',
        allowBlank:false
	});	
	var idproyecto = new Ext.form.TextField({
		id:  'idproyecto',
		name: 'idproyecto',
		fieldLabel: 'Id Proyecto',
        allowBlank:false
	});	

	
	var	formularioProyectos2 = new Ext.FormPanel({
		   frame:true,
		   bodyStyle:'padding:5px 5px 0',
		   width: 385,
		   height: 120,
		   items: [idproyecto,codproyecto,descripcion,estado]
 });
Funcion para cargar los datos:
Nota: esta funcion se llama al seleccionar un valor de un combobox que esta mas arriva, no creo que sea necesario colocarlo ya que esa parte creo que esta funcionando bien ya que si me llama la funcion
Código:
	function cargarProyecto(){
		    formularioProyectos2.form.load({
	            url:'/contable/cont/contabilidad/ajax/obtenformproyectos',
	            method:'GET',
	            waitMsg:'Loading',
	            success:function(form, action) {
	                Ext.MessageBox.alert('Message', 'Loaded OK');
	            },        	
	            failure:function(form, action) {
	                Ext.MessageBox.alert('Message', 'Load failed');
	            }
	        });
	};
Esta es la respuesta que me entrega el firebug del archivo php que devuelve la informacion
Código:
[{"idproyecto":1,"cod_proyecto":"01","descripcion":"SERNAM","estado":"Activo"}]
cuando ejecuto la accion para cargar el formulario no me muestra nada en los fields
espero su ayuda
gracias :)
  #2 (permalink)  
Antiguo 27/02/2009, 19:22
 
Fecha de Ingreso: marzo-2006
Ubicación: Medellín
Mensajes: 93
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: Extjs Cargando datos desde una BD a un formulario

Bueno, no tengo mucho tiempo en este momento pero mirando el codigo por encima creo que te faltan varias cosas, primero decodificar la respuesta JSON del archivo PHP para transformarlo a un objeto javascript para que Extjs pueda trabajar con el, segundo, yo suelo utilizar un JSON Reader para cargar los datos, no se si en este caso aplica para que quieres hacer y por ultimo, veo que cuando haces la llamada AJAX y la respuesta fue exitosa muestras un mensaje de que todo esta OK, pero no haces nada con la informacion recibida del servidor, lo que tendrias que hacer es cuando la respuesta sea Success coger la respuesta, decodificarla, y luego recorrerla para llevarla al formulario o al combobox...... espero te sriva de algo.
__________________
"Conocimiento adquirido y no compartido se perderá para siempre" :cool:
  #3 (permalink)  
Antiguo 05/03/2009, 23:39
 
Fecha de Ingreso: marzo-2009
Mensajes: 1
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Extjs Cargando datos desde una BD a un formulario

mira en la respuesta del servidor, te faltan datos debes mandar tus datos en un formato especifico

{"success":true,
"data": {"campo1":"***","campo2":"****","campo3":"***"} }
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:18.