Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/07/2013, 08:01
Andrew777
 
Fecha de Ingreso: junio-2009
Ubicación: Bolivia
Mensajes: 96
Antigüedad: 14 años, 10 meses
Puntos: 0
creacion de elementos con json,jquery, php, NO FUNCIONA EN LINUX con el IE10?

El codigo jquery es el siguiente:
Código Javascript:
Ver original
  1. /*
  2. CrearNuevaCopia
  3. Fecha: 22/07/2013
  4. id: id de la tabla donde crearemos los objetos
  5. id_tipo: id del tipo de destinatario, el cual lo obtenemos de una tabla a traves json
  6. id_total: cantidad de objetos creados
  7. */
  8. var contador = 0;
  9. function CrearNuevaCopia(id,id_tipo,id_total)
  10. {  
  11.     //alert('holas ingreso a la funcion');
  12.     //obtenemos la tabla donde guardaremos a los hijos creados    
  13.     var tabla =  $('#' + id);
  14.     var indice = document.getElementById(id_tipo).selectedIndex;
  15.     //var miArray = new Array();
  16.     if(indice != 0)
  17.     {
  18.       //miArray[contador] = indice;
  19.    
  20.       alert('holas ingreso');
  21.       var destinatario = "codigo" + contador;  
  22.        
  23.       //creamos primero la fila con jquery         
  24.       var fila = $('<tr>');
  25.       alert('esto es la fila'+ fila);
  26.       //ahora creamos el elemento th
  27.       var th = $('<tr>');
  28.       //le asignamos a th la clase css
  29.       th.addClass('Estilo4');            
  30.       // ahora creamos un div el cual sera el hijo de th
  31.       var div = $('<tr>');
  32.       //le asignamos un atributo a ese div
  33.       div.attr('align','right');
  34.       //creamos un parrafo
  35.       var p = $('<p>');        
  36.       var contenido = "Destinatario";      
  37.       p.append(contenido);
  38.       //lo guardamos dentro del div            
  39.       div.append(p);     
  40.       //el div lo colocamos como hijo del th
  41.       th.append(div);
  42.       //colocamos todo el th como hijo de la fila
  43.       fila.append(th);
  44.       //creamos otro hijo, que sera el 2do hijo del tr,
  45.       //el cual es un elemento td
  46.       var td = $('<td>');
  47.       //creamos un hijo de td que es el elemento div
  48.       var div = $('<div>');
  49.       //colocamos el atributo que queremos
  50.       div.attr('align','left');
  51.       //ahora creamos el elemento select
  52.       var miselect = $('<select>');
  53.       //le asignamos valores a sus atributos
  54.       miselect.attr('id',destinatario);
  55.       miselect.attr('name',destinatario);
  56.      
  57.       $.post("cargar_json_select_remitentes.php",{tipo:indice},
  58.       function(data) {
  59.                      miselect.empty();
  60.                      for (var i=0; i<data.length; i++)
  61.                      {
  62.                       miselect.append('<option value="' + data[i].id + '">' + data[i].literal + '</option>');
  63.                      }
  64.                     }, "json");  
  65.        
  66.       //boton.attr('name','adjuntos'+'[]');
  67.       div.append(miselect);
  68.       //creamos un elemento hijo para guardar los datos del tipo de destinatario
  69.       var oculto = $('<input>');
  70.           oculto.attr('type','hidden');
  71.           oculto.attr('name','tipo'+ contador);
  72.           oculto.attr('id','tipo'+ contador);
  73.           oculto.attr('value',indice);
  74.       //adicionando el campo oculto donde se guardara el tipo de remitente  
  75.           div.append(oculto);                      
  76.           td.append(div);
  77.           fila.append(td);           
  78.      tabla.append(fila);   
  79.      contador = contador + 1;                        
  80.      document.getElementById(id_total).value = contador;       
  81.     }
  82.     else
  83.     {
  84.      alert("Introduzca el tipo de remitente");   
  85.     }
  86. }

el archivo json con php tiene lo siguiente:
Código PHP:
Ver original
  1. <?php
  2.     require_once('librerias/control_sesion.php');
  3.     include ('conn.php');          
  4.     //Obteniendo el tipo de remitentes que vamos a generar
  5.     //a traves de jquery
  6.     $tipo = $_REQUEST['tipo'];
  7.     $tipo = 4;       
  8.     if($tipo==1)
  9.     {
  10.      $consulta = "SELECT n_cod_ger As codigo,c_desc_ger As descripcion
  11.                  FROM ta_gerencia
  12.                   WHERE d_fecha_eliminacion IS NULL ORDER BY c_desc_ger asc";                                            
  13.     }
  14.     if($tipo==2)
  15.     {
  16.      $consulta = "SELECT n_cod_dpto As codigo,c_desc_dpto As descripcion
  17.                  FROM ta_departamento
  18.                   WHERE d_fecha_eliminacion IS NULL ORDER BY c_desc_dpto asc";                                               
  19.     }
  20.     if($tipo==3)
  21.     {
  22.      $consulta = "SELECT n_cod_div As codigo,c_desc_div As descripcion
  23.                  FROM ta_division                  
  24.                   WHERE d_fecha_eliminacion IS NULL ORDER BY c_desc_div asc";                                            
  25.     }
  26.     if($tipo==4)
  27.     {
  28.      $consulta = "SELECT n_id_emp As codigo,c_nombres As nombres,c_paterno As paterno,
  29.                   c_materno As materno
  30.                  FROM ta_empleado                  
  31.                   WHERE d_fecha_baja IS NULL AND n_eliminado = 0 ORDER BY c_nombres asc";                                            
  32.     }
  33.                                      
  34.     $sqlCombo = mysql_query($consulta);  
  35.     $i= 0;
  36.    
  37.     if($tipo != 4)
  38.     {                
  39.       while($FilaCombo = mysql_fetch_array($sqlCombo))
  40.       {            
  41.         $datos[$i] = array('id'=>$FilaCombo['codigo'],'literal'=>utf8_encode($FilaCombo['descripcion']));
  42.         $i++;          
  43.       }            
  44.     }
  45.     else
  46.     {
  47.      while($FilaCombo = mysql_fetch_array($sqlCombo))
  48.      { 
  49.         $literal = utf8_encode($FilaCombo['nombres'])." ".utf8_encode($FilaCombo['paterno'])." ".utf8_encode($FilaCombo['materno']);           
  50.         $datos[$i] = array('id'=>$FilaCombo['codigo'],'literal'=>$literal);
  51.         $i++;          
  52.      }
  53.     }
  54.     echo json_encode($datos);  
  55. ?>