ExtJS+JsonStore+JSP
[b]Me interesa cargar en un combo los datos cargados en un JsonStore, que pretendo cargar del siguiente archivo:
json.jsp[/b]
<%="{total:9,data:[{id: 1,name: 'Crysfel',occupation: 'Software developer',gender: 'm',age: 25},{id: 2,name: 'Sasha',occupation: 'Figure skater',gender: 'f',age: 24},{id: 3,name: 'Jack',occupation: 'Software Architect',gender: 'm',age: 35},{id: 4,name: 'John',occupation: 'Javascript developer',gender: 'm',age: 22}]}"%>[b] El archivo de configuración de ExtJs donde los extraigo del JSP y creo mi JsonStore es el siguiente:[/b]
Ext.onReady(function(){ Ext.QuickTips.init(); var bd = Ext.getBody(); //this way it is more easy (a few lines of code to do the same) var store30 = new Ext.data.JsonStore({ url: 'jsondata.jsp', root: 'data', fields: ['name','occupation','gender',{name:'age',type:'float'}] }); var Formulario_Logeo = new Ext.FormPanel({ id : 'Formulario_Logeo', title : 'Logeo', labelWidth : 80, width : 300, height : 150, renderTo : 'AreaDespliegue', frame : true, hidden : false, items : [ { id : 'Logeo_Usuario', name : 'Logeo_Usuario', xtype : 'textfield', fieldLabel : 'Usuario', emptyText : 'Ingrese el usuario', allowBlank : false, blankText : 'Este campo es requerido', width : 180 }, { id : 'Logeo_Combo', name : 'Logeo_Combo', xtype : 'combo', fieldLabel : 'Tipo', displayField : 'name', typeAhead : true, mode : 'remote', triggerAction : 'all', emptyText : 'Seleccione un tipo', selectOnFocus : true, width : 180, store : store30 } ], buttons : [ { id : 'Boton_Aceptar', text : 'Aceptar' } ] }); store30.load({params:{start: 0, limit: 5}}); });[b] [color=#4000BF]Ya comparé mi caso con el ejemplo en PHP ([url]http://www.quizzpot.com/2009/04/leer-informacion-en-formato-json/[/url]) que hay en el curso, pero yo lo que hago es cambiarlo a JSP, y no me funciona. Alguien que sepa como resolver mi problema ya que reviso el código y no encuentro error. AYUDA POR FAVOR.[/color][/b]
hola, he probado tu ejemplo y me funciona bien, estas seguro que tienes algun div con el id="AreaDespliegue", si en caso no lo tuvieras ese es el problema ya que el formulario no tiene donde renderizarse, puedes ponerle en la propiedad renderTo: document.body o crear el div con el id="AreaDespliegue".
saludos
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.