Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/08/2013, 19:19
BLADDE
 
Fecha de Ingreso: abril-2006
Mensajes: 72
Antigüedad: 18 años
Puntos: 0
cargar varios input text con ajax

saludos compañeros, estoy inciando con ajax y fijense e logrado hacer una consulta retornar un valor y mostrarlo en un input text, pero ahora quiero cargar con la info varios text. ejemplo si paso por parametro el ID de un registro y este registro tiene nombre,cedula y telefono quiero con los text se actualicen con la informacion que me retorna.
les muestro que tengo:
registro.php // aqui solicito la informacion que identifica el registro y llamo a una funcion en javascript

Código HTML:
<table class="table-bordered" width="100%" cellspacing="3" cellpadding="3">
<tr>
  <td colspan="2" ><div  align="center">Registro de Contribuyentes</div></td>
</tr>
<tr>
  <td width="474" ><select name="tipo" id="tipo" class="select_rif">
    <option selected value="J">J</option>
    <option value="V">V</option>
    <option value="G">G</option>
    <option value="P">P</option>
    <option value="E">E</option>
  </select>    
    <input name="rif" type="text" id="rif" onKeyPress="return teclear(event,3)" maxlength="9" placeholder="Rif:120001113"></td>
  <td width="443" ><div align="left"><input type="button" name="button" id="button" value="Busca Contribuyente" onClick='carga_contrato(this.rif)'></div></td>
</tr>
</table> 
ahi tipeo el rif y lo paso a carga_contrato()

Código:
function carga_contrato(rif_contri)
{ 

	var ajax=nuevoAjax();
	var selectOrigen=document.getElementById('tipo');
	// Obtengo la opcion que el usuario selecciono
	var opcionSeleccionada=selectOrigen.options[selectOrigen.selectedIndex].value;
	var rif=opcionSeleccionada+document.getElementById('rif').value;//contruyo el rif
	
		// Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen
		var ajax=nuevoAjax();
		ajax.open("GET", "funcion_ajax.php?rif="+rif+"&sw=1", true);// va uno en sw por que el uno sera para resolver esta funcion de verificar contribuyente
		ajax.onreadystatechange=function() 
		{ 
			
			if (ajax.readyState==4)
			{   
					var resultado=ajax.responseText;
					
					if(resultado=="1"){
					
					var ajax2=nuevoAjax();
		ajax2.open("GET", "funcion_ajax.php?rif="+rif+"&sw=2", true);//paso 2 por esta me retornara los datos del contribuyente y su representante legal
		ajax2.onreadystatechange=function() 
		{ 
					
						
						
											
					div_oculto=document.getElementById('div_oculto');
					div_oculto.style.visibility = "visible"; 
					div_oculto.innerHTML=ajax2.responseText;
					
					
					
					
					}
		ajax2.send(null);
					
					}else{
						alert("El contribuyente no existe");
						
						}
			} 
		}
		ajax.send(null);
	
	
	
	
	}
div_oculto contiene todos los input text

el php funcion_ajax es este
Código PHP:
<?php
session_start
();
if (
$_POST or $_GET or isset( $_SERVER['HTTP_REFERER'] )) {
    
$refer strtolower$_SERVER['HTTP_REFERER'] ); 
    if(
substr_count($refer'localhost/sia')==1){

if(
$_GET['sw']=="1")//registro de contrato
{
    
$rif_ci=$_GET['rif'];
    include_once 
'conexion.php';  conecta_sia();
     
$sql="select rif_ci from rif where rif_ci='$rif_ci'";
                       
$consulta=mysql_query($sql) or die(mysql_error());  
      if(
$res=mysql_fetch_object($consulta))
    { echo 
"1"; }else{ echo "0";    }    
    
cerrar_conexion();  
}else{
        if(
$_GET['sw']=="2")
            {
                
// voy a devolver los campos de contribuyente y representante legal, nombre,cedula,telefono
                
$rif_ci=$_GET['rif'];
    include_once 
'conexion.php';  conecta_sia();
     
$sql="select nombre,rif_ci,telefono,nombre_representante,cedula_representante,telefono_rep from rif where rif_ci='$rif_ci'";
                       
$consulta=mysql_query($sql) or die(mysql_error());  
      if(
$res=mysql_fetch_object($consulta))
    { 
        
// pinto todos los edit
        // Comienzo a imprimir el select
    
$nombre=$res->nombre;
    echo 
"<input name='nombre_contribuyente' type='text' class='edit_nombre' id='nombre_contribuyente' value='".$nombre."' readonly='readonly' placeholder='Nombre o Razon Social' >";

echo 
"<input name='rif_reg' type='text' id='rif_reg' readonly='readonly' value='".$res->rif_ci."' >";

echo 
"<input name='telefono_contribuyente' type='text' id='telefono_contribuyente' readonly='readonly' placeholder='Teléfono' value='".$res->telefono."' >";

echo 
"<input name='nombre_rep' type='text' class='edit_nombre' id='nombre_rep' readonly='readonly' placeholder='Nombre y Apellido' value='".$res->nombre_representante."' >";

echo 
"<input name='cedula_rep' type='text' id='cedula_rep' readonly='readonly' placeholder='Cédula:17111222' value='".$res->cedula_representante."' >";

echo 
"<input name='telefono_rep' type='text' id='telefono_rep' readonly='readonly' placeholder='Teléfono:04160001122' value='".$res->telefono_rep."' >";    
        
    
        
        
    }else{
         echo 
"0";    
         }    
    
    
    
cerrar_conexion();  
        
                }
    
    
    
    
    
    
    }









 


    }else{
echo (
"<script language='javascript'>                                                  
           alert('Esta pagina es privada, no tiene los permisos necesarios')
              var pagina='../index.php'
              location.href=pagina</script>"
);

}

 }else{
echo (
"<script language='javascript'>                                                  
           alert('Esta pagina es privada, no tiene los permisos necesarios')
              var pagina='../index.php'
              location.href=pagina</script>"
);

?>

si hay algo en el ajax que optimizar se agradece todo lo que e logrado a sido viendo ejemplos y tratando de imitar el funcionamiento no e trabajado con ajax antes.