Ver Mensaje Individual
  #3 (permalink)  
Antiguo 05/12/2016, 07:45
JUMASOL
 
Fecha de Ingreso: noviembre-2005
Mensajes: 889
Antigüedad: 19 años
Puntos: 8
Respuesta: if else con operador "?"

Hola mpozo.

No, no importa "0" o cualquier otro valor. Todos son indicativos de una opción.

<option value="0">Opción 1</option>
<option value="1">Opción 2</option>
<option value ="2">Opción 3</option>

etc.

De lo que se trata es de que tengo unas opciones en un selector, unas tienen que dar lugar a que se muestre un bloque del formulario y otras no.

El bloque está inicialmente oculto con css.

Ese código funciona parcialmente, porque si lo repites para cada una de las opciones (valores 0, 1, 2, 3, 4, 5, etc.) lo que hace es que oculta o deja visible de forma alterna, puesto que si está visible lo deja invisible y viceversa. Ello no sirve en mi caso.

Imaginemos estas opciones y como tienen que estar según sus valores:

0 = Oculto
1 = Oculto
2 = Oculto
3 = Oculto
4 = Oculto
5 = Oculto
6 = Visible
7 = Visible
8 = Visible

Si seleccionas la opción con el valor "0", el módulo está oculto. Si luego el usuario cambia de opinión y selecciona la opción "7", el módulo aparece visible.

Pero si luego el usuario vuelve a cambiar de opinión y selecciona la opción con el valor "8", el alternador hace que lo que estaba visible se oculte, cuando tendría que permanecer visible.

Lo mismo si estando oculto se selecciona el "1" y luego se cambia a "2".

Es el efecto de 'none' : 'block';

De lo que se trata es de que la variable inserte siempre un estilo, el que sea, "block" o "none", pero no else.