PDA

Ver la Versión Completa : Combo o menu desplegable dinamico


Andrea Martinez
05-10-2004, 16:27:07
¿Como puedo hacer para que al cambiar la opción seleccionada en un combo, cambien también las opciones disponibles en otro combo?

o lo que pasa es que tengo una pagina con dos combos y quisiera que cuando selecciones un valor del primer combo se carguen valores en el 2do combo

Tecnic2
08-10-2004, 11:12:20
Lo puedes hacer con la propiedad combo.Items.Add('valor');

kayetano
11-10-2004, 11:17:35
Hola

con esto vacias un combo:

miCombo.length = 0;


y con esto metes nuevas opciones:

miCombo.options[x] = new Option('texto', valor );


y si no recuerdo mal con esto puedes seleccionar una de las opciones

miCombo.options[1].selected = true;


Todo, claro, en javascript. (no en php)

Emilio
12-10-2004, 12:46:09
Bueno vamos a ampliar con un sencillo ejemplito para que Kayetano no me tache de escueto ;)


<script>
function cambio( region ) {
document.form.comboB.length =0;
switch ( region ) {
case 'baleares': {
document.form.comboB.options[0] = new Option('Mallorca', 'mallorca' );
document.form.comboB.options[1] = new Option('Menorca', 'menorca' );
document.form.comboB.options[2] = new Option('Ibiza', 'ibiza' );
break;
}
case 'catalunya': {
document.form.comboB.options[0] = new Option('Barcelona', 'barcelona' );
document.form.comboB.options[1] = new Option('Tarragona', 'tarragona' );
document.form.comboB.options[2] = new Option('Lerida', 'lerida' );
document.form.comboB.options[3] = new Option('Gerona', 'gerona' );
break;
}
case 'galicia': {
document.form.comboB.options[0] = new Option('La Coruña', 'lacoruña' );
document.form.comboB.options[1] = new Option('Lugo', 'lugo' );
document.form.comboB.options[2] = new Option('Orense', 'orense' );
document.form.comboB.options[3] = new Option('Pontevedra', 'pontevedra' );
break;
}
}
}
</script>


<form name="form" method="post" action="">
<select name="comboA" onChange="cambio(this.value)">
<option value="0" selected>Selecciona algo</option>
<option value="baleares">Baleares</option>
<option value="catalunya">Cataluña</option>
<option value="galicia">Galicia</option>
</select>
<select name="comboB">
</select>
</form>


No creo que sean necesarias muchas explicaciones, si hay dudas copia y pega el codigo en un .htm y lo lanzas con tu navegador, él hablará por si mismo.

noshy
24-02-2007, 00:59:52
Todo claro, pero dentro del script, en la funcion cambio() se puede agregar codigo php para realizar un select por ejemplo, y recoger la variable de parametro??

Gracias

kayetano
25-02-2007, 01:38:28
Hola

Me gusta que la gente utilice el sistema de búsqueda del foro y siga hilos de hace 3 años ;).

en la funcion cambio() se puede agregar codigo php para realizar un select por ejemplo, y recoger la variable de parametro??
A tu pregunta te contestaré que NO, no puedes mezclar JAVASCRIPT con PHP ya que el PHP se interpreta en el servidor y el JAVASCRIPT en la máquina local, como opciones tienes tres:
1. La más chunga, recargar la página cada vez que modifiques el contenido.
2. La más moderna, utilizar AJAX, este sistema permite hacer llamadas al servidor y modificar una porción de tu código HTML sin necesidad de recargar la página entera.
3. La que yo uso, basicamente consisten en generar un array JAVASCRIPT con todos los posibles valores del desplegable, este array se generará desde PHP y utilizo como índice del array la clave primaria de mi tabla.

Espero que te sirva de algo.