Foros del Web » Programando para Internet » Javascript »

Cargar textfield de acuerdo a seleccion en Listbox

Estas en el tema de Cargar textfield de acuerdo a seleccion en Listbox en el foro de Javascript en Foros del Web. Hola Por favor si alguien me puede ayudar, Tengo una tabla en Mysql (listanumeros) que tiene 2 campos: numero y nombre. Hago un query con ...
  #1 (permalink)  
Antiguo 16/06/2009, 10:28
 
Fecha de Ingreso: mayo-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Cargar textfield de acuerdo a seleccion en Listbox

Hola

Por favor si alguien me puede ayudar, Tengo una tabla en Mysql (listanumeros) que tiene 2 campos: numero y nombre. Hago un query con PHP en la Tabla Mysql y muestro el numero seleccionado en el Listbox.
Lo quiero hacer, es que al seleccionar un numero en el Listbox, en un textfield aparesca el nombre que corresponde al numero seleccionado.
He consultado en la web, y veo que esto se puede hacer con javascript, pero no he consigo hacerlo funcionar:

Este es el programa:


Código:
<script type="text/javascript">
<!--
  function getValue(obj) {
    document.forms[0].field1.value = obj.options[obj.selectedIndex].value;
  }
// -->
</script>
</head>

<body>
<form action="BorrarListaNumero.php" method="post" name="form1" onChange="getValue(this)">
  <?php
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("llamadas", $con);

//Hago query1
$query1 = "SELECT * FROM listanumeros ".
"ORDER BY numero ";
$result1 = mysql_query($query1) or die(mysql_error());

//$result = mysql_query ($query);
echo "<select name='numero'>";

// Mostrar en Lisbox
while($row1=mysql_fetch_array($result1)){//Array or records stored in $nt
echo"<option value='$row1[numero]'>$row1[numero]</option>";
/* Option values are added by looping through the array */
}

echo "</select>";// cerrar list box 
?>
  <input type="text" name="field12" size="15" />
  <br />
  <input name="submit2" type="submit" id="submit2" value="Aceptar" />
</form>
</body>
</html>
Gracias!!!
  #2 (permalink)  
Antiguo 16/06/2009, 10:44
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

listbox me imagino que te refieres a un select
puedes hacerlo con ajax... cuando cambie el numero del select entonces que te cargue el input text con el nombre.
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #3 (permalink)  
Antiguo 16/06/2009, 10:50
 
Fecha de Ingreso: mayo-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

Gracias lobo_php

Si no es mucho pedir, Podrias por favor postear un ejemplo
  #4 (permalink)  
Antiguo 16/06/2009, 10:59
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

bueno, tengo tiempo jeje,

al momento de hacer el select ya con los option y todo (creo que ya lo tienes hecho(sino hazlo))

pones en el select onChange="ponernombre()"

primero que todo pon esta funcion:

Código javasript:
Ver original
  1. function nuevoAjax()
  2. {
  3.     /* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
  4.     lo que se puede copiar tal como esta aqui */
  5.     var xmlhttp=false;
  6.     try
  7.     {
  8.         // Creacion del objeto AJAX para navegadores no IE
  9.         xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
  10.     }
  11.     catch(e)
  12.     {
  13.         try
  14.         {
  15.             // Creacion del objeto AJAX para IE
  16.             xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  17.         }
  18.         catch(E) { xmlhttp=false; }
  19.     }
  20.     if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); }
  21.  
  22.     return xmlhttp;
  23. }

en esa funcion debes hacer esto:

Código javascript:
Ver original
  1. function ponernombre()
  2. {
  3.     var dato=document.getElementById("id_select").value;
  4.    
  5.         var ajax=nuevoAjax();
  6.         ajax.open("GET", "consulta_nombre.php?valor="+dato, true);
  7.         ajax.onreadystatechange=function(){
  8.             if (ajax.readyState==4){
  9.                 document.getElementById("id_input_text").value=ajax.responseText;
  10.             }
  11.         }
  12.         ajax.send(null);
  13. }

y en la pagina de consulta_nombre.php

pues tomas el valor de get:

$_GET['valor'];

y sobre ese haces la consulta del nombre, segun ese valor, y lo pones a imprimir

echo $el_nombre_del_numero;

y ya, eso es todo :D
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #5 (permalink)  
Antiguo 16/06/2009, 13:19
 
Fecha de Ingreso: mayo-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

Disculpa mi ignorancia lobo_php, Pero tengo que crear dos archivos uno con las dos funciones de AJAX y otro con PHP (consulta_nombre.php)?.
Yo solo quiero que de acuerdo al numero seleccionado en el select, en un textfield en la misma pagina aparezca el nombre que corresponde al numero.

Por otra parte como quedaria el select al agregar el:

onChange="ponernombre()"

Lo coloque asi y me da error:
echo "<select name='numero' onChange="ponernombre()">";

Gracias
  #6 (permalink)  
Antiguo 16/06/2009, 13:45
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

te quedarian tres paginas inicialmente, esta el pagina.php que es donde esta el formulario, el de miscript.js y el consulta_nombre.php

primero que todo en pagina.php pones: (en html si quieres):

Código html:
Ver original
  1. <script src="miscript.js"></script>

luego de eso si pones en el formulario... (si prefieres en html o php)

Código php:
Ver original
  1. echo "<select name='numero' onChange='ponernombre()'>";

el error que te sacaba era por las comillas
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #7 (permalink)  
Antiguo 16/06/2009, 15:39
 
Fecha de Ingreso: mayo-2008
Mensajes: 9
Antigüedad: 16 años
Puntos: 0
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

Gracias lobo_php!!

Pero quisiera que cuando el usuario seleccione el numero en el select este se muestre en un text field (llamado nombre) en la misma pagina

<input name="nombre" type="text" id="nombre" />

Cuando se selecciona el numero deberia aparecer el nombre asociado (Ver Imagen)

ejemplo:

2376543 Pedro Perez
  #8 (permalink)  
Antiguo 16/06/2009, 15:51
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Cargar textfield de acuerdo a seleccion en Listbox

1. no veo la imagen,
2. el codigo que te di te sirve para el input text en la misma pagina.
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
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 21:22.