Foros del Web » Programando para Internet » Javascript »

keyup???

Estas en el tema de keyup??? en el foro de Javascript en Foros del Web. buenas a todos. tengo un problemilla con mi código js, estoy tratando de enviar datos de un select hacia un input para que me llene ...
  #1 (permalink)  
Antiguo 17/03/2016, 09:45
 
Fecha de Ingreso: marzo-2016
Mensajes: 9
Antigüedad: 8 años, 1 mes
Puntos: 0
keyup???

buenas a todos.
tengo un problemilla con mi código js, estoy tratando de enviar datos de un select hacia un input para que me llene automáticamente otros inputs, pues lo he logrado pasar solo que tengo un scrip que ejecuta la funcion keyup osea si detecta ingreso de teclas solo se llenan el resto datos como, que función usaría para reemplazar esa función y que solo detecte el datos ya ingresado.
desde ya mis agradecimientos por su ayuda.
Cita:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js" type="text/javascript"></script>

<script>
$(document).ready(function(){

// generamos un evento cada vez que se pulse una tecla
$("#id").keyup(function(){

// enviamos una petición al servidor mediante AJAX enviando el id
// introducido por el usuario mediante POST
$.post("miarchivo.php", {"id":$("#id").val()}, function(data){

// Si devuelve un nombre lo mostramos, si no, vaciamos la casilla
if(data.nombre)
$("#nombre").val(data.nombre);
else
$("#nombre").val("");

// Si devuelve un apellido lo mostramos, si no, vaciamos la casilla
if(data.apellidos)
$("#apellidos").val(data.apellidos);
else
$("#apellidos").val("");

},"json");
});
});
</script>

<style>
#miFormulario span {width:100px;display:inline-block;}
</style>
</head>
<script type="text/javascript">
var mostrarValor = function(x){
document.getElementById('id').value=x;
}</script>

<body>

<form id="miFormulario" name="miFormulario">


<select name="elejir" onchange="mostrarValor(this.options[this.selectedIndex].innerHTML)">
<option value="30">30</option>
<option value="20">20</option>
<option value="10">10</option>
<option value="15">15</option>
</select>

<div><span>ID:</span><input type="text" name="id" id="id" value=""> (introduce el id 10)</div>
<div><span>Nombre:</span><input type="text" name="nombre" id="nombre" value=""></div>
<div><span>Apellidos:</span><input type="text" name="apellidos" id="apellidos" value=""></div>
</form>

</body>
</html>
Cita:
<?php
# Esta página recibe por post el id del formulario.
#
# Para nuestro ejemplo, devolvemos un valor para el id 10, pero aqui se tendria
# que realizar la busqueda en la base de datos en busca del registro.
#

if($_POST["id"]=="10")
{
echo json_encode(array("nombre"=>"juan", "apellidos"=>"martinez exposito"));
}else{
echo json_encode(array("nombre"=>"", "apellidos"=>""));
}
?>

Última edición por pablohgb20; 17/03/2016 a las 09:52
  #2 (permalink)  
Antiguo 17/03/2016, 20:29
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.124
Antigüedad: 14 años
Puntos: 66
Respuesta: keyup???

siempre que entro voy buscando posts con 0 respuestas porque me sabe mal que le gente se quede tirada por aquí ya que yo nunca me quedé tirado, pero la explicación es "inentendible", tómate un par de minutos más en tratar de pensar como explicárnoslo por favor XD
  #3 (permalink)  
Antiguo 18/03/2016, 05:29
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: keyup???

yo te entendi jejejeje, bueno si lo que deseas es que al cargarse en el input la id se carguen los datos de usuario, seria algo asi:


Código HTML:
Ver original
  1. <select name="elejir" onchange="muestra();">
  2. <option value="30">30</option>
  3. <option value="20">20</option>
  4. <option value="10">10</option>
  5. <option value="15">15</option>
  6.  
  7. <div><span>ID:</span><input type="text" name="id" id="id" value=""> (introduce el id 10)</div>
  8. <div><span>Nombre:</span><input type="text" name="nombre" id="nombre" value=""></div>
  9. <div><span>Apellidos:</span><input type="text" name="apellidos" id="apellidos" value=""></div>

Código Javascript:
Ver original
  1. function muestra(){
  2.  
  3. var X = $("select[name=elejir]").val();
  4.  
  5. document.getElementById('id').value=X;
  6.  
  7. carga();
  8.  
  9.  
  10. }
  11.  
  12. function carga(){
  13.  
  14. var ar = ["30","20","10","15"];
  15.  
  16. var valor = $("input[id=id]").val();
  17.  
  18. var index = $.inArray(valor,ar);
  19.  
  20. if( index > -1){
  21.    
  22.   switch(index){
  23.    
  24.     case 0:
  25.    
  26.         $("input[name=nombre]").val("Carlos");
  27.       $("input[name=apellidos]").val("Moreno");
  28.    
  29.     break;
  30.    
  31.     case 1:
  32.    
  33.         $("input[name=nombre]").val("Luis");
  34.       $("input[name=apellidos]").val("Gonzalez");
  35.    
  36.     break;
  37.    
  38.     case 2:
  39.    
  40.         $("input[name=nombre]").val("María");
  41.       $("input[name=apellidos]").val("Martinez");
  42.    
  43.     break;
  44.    
  45.     case 3:
  46.    
  47.         $("input[name=nombre]").val("Ramón");
  48.       $("input[name=apellidos]").val("Estrada");
  49.    
  50.     break;
  51.  
  52.   }
  53.  
  54.  
  55. }
  56.  
  57.  
  58. }


en la función carga solo tendrias que reemplazar su contenido con una petición ajax que solicita la info al archivo php y pues cargue el resultado en los inputs


MUESTRA con array js: https://jsfiddle.net/59fpozan/
__________________
[email protected]
HITCEL

Etiquetas: funcion, input, js
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:02.