Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/11/2012, 21:19
jisravila
 
Fecha de Ingreso: noviembre-2009
Mensajes: 110
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: JQGrid no me hace el reload

Hola que tal, me tarde poco en responder por cuestiones personales, pero aquí esto de nuevo.!!

Adjunto un ejemplo completo donde se encuentra mi problema.

Código Javascript:
Ver original
  1. // El grid siempre se abrira cuando le de click a un elemento 'a'
  2.  
  3. $( 'a' ).click(function(){
  4.    
  5.     var idSel = $(this).attr('id') // Opción seleccionada en menu
  6.    
  7.     // Variables para generación de GRID
  8.    
  9.     var archivoXML = ""
  10.     var txtColNames = ""
  11.     var txtModel = ""    
  12.     var txtSortName = ""
  13.     var txtCaption = ""
  14.     var nr = 20
  15.    
  16.     // Segun la opción que seleccionen asigna valores distintos a variables para el GRID
  17.    
  18.     switch(idSel){
  19.        
  20.         case 'btnUsuarios':
  21.            
  22.             archivoXML = "xmlUsuarios.php"
  23.             txtColNames = ['id','username','correo electronico']
  24.             txtModel =
  25.                 [
  26.                 {name:'id', index:'id', width:80, sortable:false},
  27.                 {name:'username', index:'username', width:120, sortable:false},
  28.                 {name:'mail', index:'mail', width:180, sortable:false}
  29.                 ],                        
  30.             txtSortName = "id"
  31.             txtCaption = "Listado de Usuarios"    
  32.             break;
  33.            
  34.         case 'btnDistritos':
  35.            
  36.             archivoXML = "xmlDistritos.php"
  37.             txtColNames =
  38.                 ['Municipio','Direccion','Teléfono']
  39.             txtModel =
  40.                 [
  41.                 {name:'municipio', index:'municipio', width:200, sortable:false, align:"center"},
  42.                 {name:'direccion', index:'direccion', width:550, sortable:false},
  43.                 {name:'telefono', index:'telefono', width:120, sortable:false, align:"center"}
  44.                 ],
  45.             nr = 25
  46.             txtSortName = "municipio"
  47.             txtCaption = "Listado de Distritos"
  48.             break;
  49.        
  50.         default:
  51.    
  52.     } // Fin switch()
  53.    
  54.     // Intentamos actualizar grid ( A Q U I     M I     P R O B L E M A )
  55.     actualizaGrid(archivoXML); // Reload de Grid
  56.    
  57.     // Llamamos funcion que genera el grid
  58.     generaGrid(archivoXML,txtColNames,txtModel,nr,txtSortName,txtCaption);
  59.  
  60. }); // Fin $( 'a' ).click()
  61.  
  62.  
  63. // ----------------- Actualizacion de GRID -------------------------------
  64.  
  65. function actualizaGrid(archivoXML){ // Recibimos archivo a actualizar
  66.     var urlRecargar = '../archivosXML/'+archivoXML;
  67.     //alert(urlRecargar)
  68.     $( '#tabla' ).jqGrid('setGridParam', {url:urlRecargar,datatype: "xml" })
  69.     $( '#tabla' ).trigger("reloadGrid")
  70. } // Fin actualizaGrid()
  71.  
  72. // -----------------  Generacion de JQGrid -------------------------------
  73.  
  74. function generaGrid(archivoXML,txtColNames,txtModel,nr,txtSortName,txtCaption){
  75.     $( '#tabla' )
  76.         .jqGrid({
  77.             url:'../archivosXML/'+archivoXML,
  78.             datatype: "xml",
  79.             height: 350,
  80.             colNames:txtColNames,
  81.             colModel:txtModel,
  82.             rowNum:nr,
  83.             autowidth: false,
  84.             rowList:[10,20,30,50,100],
  85.             pager: $('#pager'),
  86.             sortname: txtSortName,
  87.             multiselect: false,
  88.             viewrecords: true,
  89.             sortorder: "asc",
  90.             caption:txtCaption            
  91.          })
  92.        .navGrid('#pager',{edit:false,add:false,del:false,search:true});
  93. } // Fin generaGrid()

Cabe mencionar que cuando imprimo la variable que recibo en la función actualizaGrid(archivoXML) si la imprime bien y también funciona correctamente la generación de los grids, pero a menos de que recargue toda la pagina, que es lo que no quiero hacer.

Agradezco a cualquier usuario que colabore en la solución de este problema.

Saludos.