Foros del Web » Programando para Internet » Javascript »

Onchange de Javascript como Variable?

Estas en el tema de Onchange de Javascript como Variable? en el foro de Javascript en Foros del Web. Lei en varios temas de este foro y toda la web que es imposible que una variable de Javascript se transforme en PHP, pero realmente ...
  #1 (permalink)  
Antiguo 03/09/2007, 17:52
 
Fecha de Ingreso: noviembre-2006
Mensajes: 12
Antigüedad: 17 años, 6 meses
Puntos: 0
Onchange de Javascript como Variable?

Lei en varios temas de este foro y toda la web que es imposible que una variable de Javascript se transforme en PHP, pero realmente ya con tanta lectura nose si es lo que necesito!

Yo tengo un while que genera un Select de una base de datos, necesito que los "value" de esos select se definan en alguna variable, porque tengo que tomarlo mediante el método GET_ sin actualizar la página.

Es decir, en el mismo PHP al cambiar de SELECT (leí con el Onchange) si se puede hacer, tengo que convertir ese value en variable, para despues cuando voy a enviar una URL colocar la dirección:
Código PHP:
"producto_agregado.php?id='.$producto[codigo].'&nombre='.$producto[descripcion].'&precio=Pedir Presupuesto&color='.$formulariocolor.'" 
La variable que todavía no puedo definir es "$formulariocolor" miren mas abajo como lo hago.

Aqui les dejo el código de donde genero los SELECT con el While y los Value:

Código PHP:
              <?
                  $color
"SELECT * FROM colores";
                
$querycolores=mysql_query($color);
                
$num_colores=mysql_num_rows($querycolores);
?>
                <form>
                <select name="select">
                <?
                
while ($row mysql_fetch_array($querycolores))
                {
                
                echo 
"<option value=".$row['color'].">".$row['color']."</option>";
                
$formulariocolor=$row['color'];
                }
                
?>
                </select>
                <?
              
echo "<p>Números de Colores Disponibles: ".$num_colores."</p>";
              
?>
De esta forma la variable $formulariocolor lo único que hace es tomar siempre el último valor, NEGRO por ejemplo. Yo necesito que al cambiar los Selects esa variable NEGRO vaya cambiando de acuerdo a lo seleccionado.

Gracias de Antemano!!!! Que lio es PHP y que lindo que esssssssss!!!
  #2 (permalink)  
Antiguo 04/09/2007, 06:16
 
Fecha de Ingreso: noviembre-2006
Mensajes: 12
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Onchange de Javascript como Variable?

Nadie sabee??? Por favor!! Necesito agregar eso al script y lo termino. Gracias desde ya.
  #3 (permalink)  
Antiguo 04/09/2007, 07:25
Avatar de .php  
Fecha de Ingreso: julio-2006
Mensajes: 481
Antigüedad: 17 años, 9 meses
Puntos: 5
Re: Onchange de Javascript como Variable?

yo se como solucionar tu problema, el problema es que no tengo tiempo paa hacerte un ejemplo.
pero te explico.
a tu select en el evento OnClick u OnChange hagas llamado a una function de javascrit. por ejemplo
Código PHP:
$color $row["color"];
 echo 
"<option value=\"$color\" OnClick="jscolor("$color\")>$color</option>"

y en tu function insertes html a un div de esta manera

Código HTML:
function jscolor(color){
   document.getElementById("color").innerHTML    =       color;
}

y en tu html debes de tener un id llamado color ej:
Código HTML:
<div id="color"> </div> 
__________________
~~[FiDeLio]~~
  #4 (permalink)  
Antiguo 04/09/2007, 08:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Onchange de Javascript como Variable?

Mas bien en lugar de querer escribir el valor de nuevo en tu link es mejor que crees una funcion en javascript para navegar por decir algo asi:
Código:
var color;
function agregaProducto() {
      var url = "producto_agregado.php?id='.$producto[codigo].'&nombre='.$producto[descripcion].'&precio=Pedir Presupuesto&color='" + color;

      window.location = url;
}

function cambiaColor() {
      var select = document.getElementById("select_color");
      var option = select.options[select.innerHTML].value;
      
      color = option;
}
y en tu select haces algo asi:
Código HTML:
<select onchange="cambiaColor();"> 
Saludos.

PD Te transfiero al foro de javascript.
  #5 (permalink)  
Antiguo 06/09/2007, 17:28
 
Fecha de Ingreso: noviembre-2006
Mensajes: 12
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Onchange de Javascript como Variable?

Te agradezco la respuesta, ya lo he puesto, pero ahora como llamo al Link en el PHP? Porque llamo a la función de Javascript pero no me la toma.

Es decir, como genero el link?.

De nuevo mil gracias!.

AGREGO: Actualmente tengo generado un botón de formulario al final con lo siguiente:
Código PHP:
<input type="button" onClick="agregaProducto()"
Pero el link que genera en el navegador no toma las variables, y nose porque el color tampoco, lo deja en "undefined".

Por ejemplo en el navegador aparece:
Código PHP:
producto_agregado.php?id='.$producto[codigo].'&nombre='.$producto[descripcion].'&precio=Pedir&#37;20Presupuesto&color='undefined 
Les muestro como quedó con las modificaciones:
Código PHP:
              <?
                  $color
"SELECT * FROM colores";
                
$querycolores=mysql_query($color);
                
$num_colores=mysql_num_rows($querycolores);
?>
                <form>
                <select onchange='cambiaColor();'>
                <?
                
while ($row mysql_fetch_array($querycolores))
                {
                
                echo 
"<option value=".$row['color'].">".$row['color']."</option>";

                }
                
?>
                </select>
                <input type="button" Value="Agregar producto" onClick="agregaProducto()">
                </form>
                <?
              
echo "<p>Números de Colores Disponibles: ".$num_colores."</p>";
              
?>
Y el Javascript:
Código HTML:
<script>
var color;
function agregaProducto() {
      var url = "producto_agregado.php?id='.$producto[codigo].'&nombre='.$producto[descripcion].'&precio=Pedir Presupuesto&color='" + color;

      window.location = url;
}

function cambiaColor() {
      var select = document.getElementById("select_color");
      var option = select.options[select.innerHTML].value;
      
      color = option;
}
</script> 
:)

Última edición por LobeznoMDQ; 06/09/2007 a las 17:53
  #6 (permalink)  
Antiguo 08/09/2007, 23:30
 
Fecha de Ingreso: noviembre-2006
Mensajes: 12
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Onchange de Javascript como Variable?

Estuve probando de varias maneras y no consigo hacerlo, alguien me puede ayudar?
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 06:12.