Foros del Web » Programando para Internet » Javascript »

Input TEXT dependiente de un SELECT

Estas en el tema de Input TEXT dependiente de un SELECT en el foro de Javascript en Foros del Web. Hola Recorriendo el Foro tengo más o menos claro cómo relacionar 2 campos SELECT pero no puedo encontrar nada para relacionar un input text con ...
  #1 (permalink)  
Antiguo 22/07/2007, 16:07
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 19 años, 7 meses
Puntos: 1
Pregunta Input TEXT dependiente de un SELECT

Hola
Recorriendo el Foro tengo más o menos claro cómo relacionar 2 campos SELECT pero no puedo encontrar nada para relacionar un input text con un select
Lo que necesito es que un campo 'text' cambie su valor según lo que se haya elegido en el 'select' del form.
Por favor chicos una ayudita
  #2 (permalink)  
Antiguo 23/07/2007, 09:56
 
Fecha de Ingreso: febrero-2003
Ubicación: D.F.
Mensajes: 74
Antigüedad: 21 años, 2 meses
Puntos: 0
Re: Input TEXT dependiente de un SELECT

Crea una fucion de la siguiente forma

<script languaje=javascript>
function valor(parametro)
{
var par = parametro.nombreselect.value o .text si lo que quieres es el texto de se select
document.tuforma.tuinputtxt.value = par;
}
</script>

en tu select

<select name="nombreselect" onchange="leapto(this.form)">
<option value="1">uno
<option value="2">dos
etc...
</select>

con esto obtienes el valor de un select en un txt

Saludos



nos leemos... o nos vemos, si no es aqui, entonces, delante del trono
richer
__________________
Nos leemos...

Richer
Is 40:31 1Co 16:22
  #3 (permalink)  
Antiguo 23/07/2007, 11:12
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Input TEXT dependiente de un SELECT

Hola:

Es sencillo... si el campo de texto se llama "texto", en el select puedes poner:
<select onchange="texto.value = this.value" ...>

Te recomiendo que ese campo sea readonly así solo toma el valor del select

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 23/07/2007, 23:09
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 19 años, 7 meses
Puntos: 1
Re: Input TEXT dependiente de un SELECT

Mil gracias
Ahora entendí !
  #5 (permalink)  
Antiguo 02/08/2008, 13:00
 
Fecha de Ingreso: agosto-2008
Mensajes: 1
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Input TEXT dependiente de un SELECT

Aunque un poco tarde pero tb se puede hacer usando XML y AJAX
aca va como hize yo:
primero la interfaz,

// con this.value capturo el valor elegido del select:
<select id="seleccionar" onChange="traerDatos(this.value);" >
<option value = "articulo1"> articulo1 </option>
<option value = "articulo2"> articulo2 </option>
<option value = "articulo3"> articulo3 </option>
</select><br/>
<input type="text" name="precio" id="precio"/><br/>
<input type="text" name="cantidad" id="cantidad"/>

luegos las funciones en javascript:

<script language="javascript" type="text/javascript">
function nuevoAjax()
{
var xmlhttp=false;
try
{
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E) { xmlhttp=false; }
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); }

return xmlhttp;
}

function traerDatos(art)
{

var cod=art;
var campo1=document.getElementById("precio");
var campo2=document.getElementById("cantidad");

var ajax=nuevoAjax();

//se puede enviar por GET el articulo tambien en este caso elegi POST
// ajax.open("GET", "ej2.php?"+"arti="+cod, true);
// ajax.send(null);

ajax.open("POST", "ej2.php", true);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.send("artic="+cod);

ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
if(ajax.status==200) {

var respuesta=ajax.responseXML;
campo1.value=respuesta.getElementsByTagName("preci ounit")[0].childNodes[0].data;
campo2.value=respuesta.getElementsByTagName("canti dad")[0].childNodes[0].data;
}else{
alert("Estado: " + ajax.status + "\nMotivo: " + ajax.statusText);
}
}
}
}

por ultimo el archivo ej2.php q tiene la consulta a la BD para obtener las propiedades relacionadas al articulo elegido:

<?php
$v=$_POST["artic"];

//$v=$_GET['arti']; esta opcion si es enviada por GET


$enlace = mysql_connect("localhost", "root", "");
$db_seleccionada = mysql_select_db("tienda", $enlace);

$resultado=mysql_query("SELECT preciounit, cantidad FROM articulo WHERE descripcion='$v'");

$registro=mysql_fetch_row($resultado);

$xml="<?xml version='1.0' encoding='ISO-8859-1'?>";
$xml.="<datos>";
$xml.="<preciounit><![CDATA[$registro[0]]]></preciounit>";
$xml.="<cantidad><![CDATA[$registro[1]]]></cantidad>";
$xml.="</datos>";
header("Content-type: text/xml");
echo $xml;
mysql_close ($enlace);
?>

espero le sirva a alguien...
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 01:10.