COMO INCLUIR FILES JS EN Y PODER USAR SUS VARIABLES Y/O ELEMENTOS
Es decir si tengo un GRID con datos de una BD y quiero hacer un filtro al click cuando dan click sobre un boton que esta en OTRO DOCUMENTO.
Para mi filtros suelo usar store.load, perooo siempre uso elementos que estan en el mismo file.. que pasa si quiero hacer el store load .. desd otro file?
SE PUEDE? alguna orientacion por favor, o ejemplo.
Graciasssssssss
Usuarios.js
var Usuarios = function(){ this.store = new Ext.data.Store(...) }
GridUsuarios.js
var UsuariosGrid = function(){ var data = new Usuarios(); //<--- clase del archivo Usuarios.js data.store.load(); }
Y en tu HTML
<script src="Usuarios.js"></script> <script src="GridUSuarios.js"></script>
Primero importas Usuarios.js ya que es utilizada dentro de GridUsuarios.js.
Saludos
Cada vez que llamo a mi variable donde puse mi "GRID" sale que no existe o no encontró el elemnto, apesar que los 2 estan en el mismo html..
<script type="text/javascript" src="JS/reporte_general.js"></script> <script type="text/javascript" src="general.js"></script>
Intento usar en general una variable que contiene un Grid en reporte_general.js pero no consigo hacerlo :(
var grid = new Ext.grid.GridPanel({ columnLines: true, store: store, columns: [ {header: 'Fecha Accesoo', dataIndex: 'FECHA_ACCESO', width: 90, align: 'center', sortable: true, renderer: evaluar,locked: true, renderer: Ext.util.Format.dateRenderer('d-m-Y')}, {header: 'Usuario', dataIndex: 'usuario', width: 90, align: 'center', sortable: true, renderer: evaluar } ], tbar: [ { xtype: 'label', style: 'padding-left:5px', text: 'Filtro por Incidencdia:' }, { xtype: 'tbspacer', width: 15 }, combo ], bbar: paginacion, height: 400, width: '100%', title: 'Registros' }); grid.render('frame'); });Esta es de General. jsvar center = new Ext.Panel ({ id : 'center', region : 'center', layout: 'card', activeItem: 0, border : false, margins : {bottom:0,right:3}, items:[general] });
en el items: en vez de "general" quiero agregar la variable del GriD.
Cabe resaltar, que intente quitar el render del grid para ponerlo abajo y igual me salio el error .
obvia algunos errores de "comas" ya que quite buena parte del codigo. .
reporte_general.js
Ext.ns('MyApp.views.reportes'); MyApp.views.reportes.General = new Ext.grid.GridPanel({.....});
general.js
Ext.ns('MyApp.views.layouts'); MyApp.views.layouts.Center = new Ext.Panel({ ... items : [MyApp.views.reportes.General] });
De esta manera solo tendrás un unico objeto en el global scope "MyApp" (Utiliza un nombre propio de tu aplicación), y sobre ese objeto puedes ir guardando las referencias a tus otros componentes.
Generalmente se usan clases en lugar de instancias, pero eso es otro tema un poco más avanzado, por el momento te debería funcionar bien la opción que te propongo.
Saludos
var web = MyApp.views.reportes.grid; Ext.getCmp('center').add({ id : objeto, items: [web] //html : web }); Ext.getCmp('center').doLayout(); Ext.getCmp('center').layout.setActiveItem(objeto);En codigo funciona, pero solo del "GRID" carga el titulo más no la tabla completa, Crysfel alguna idea porfa? ... porq solo carga el titulo del grid :/
¿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.