Evento al seleccionar opcion en select

LR

Como bien dice el titulo, mi pregunta es la siguiente:

Se le puede asignar un evento cuando seleccionas una opcion en concreto dentro de un select?

Por ejemplo:

<Select name="asd">
<option value=1>opcion1</option>
<option value=2>opcion2</option> ---> Al elegir esta que me haga algo que yo quiera
<option value=3>opcion3</option>
</select>

La idea es, que al elegir una opcion en concreto, me "desbloquee" /aparezcan unos input, que de otra manera no quiero que salgan.

RaymaN

<option onClick="funcion()">adsf</option>

LR

no sabia que el onclick se pudiese poner en un option, pensaba que ese tipo de eventos solo se podia meter en el select en si.

eXtreM3

#2 ese evento funciona si llego al option con los cursores? me explico:

input 1
input 2
select

Relleno input 1 y tabulo
relleno input 2 y tabulo
(estoy en el select)
bajo con el cursor hasta mi opción
(si la hubiera clickeado, algo habría pasado)
tabulo
envio formulario

saltaría el evento antes de tabular el select?

Shendraf

Yo lo haría de esta manera:

<select name="asd" onchange="mostrarInputs(this.value)">
.....

	function mostrarInputs(dato) {
		if (dato == "2") {
			//Aquí el resto de acciones
		}
	}

De esta manera, el evento saltará al hacer click, tabular, rueda del ratón y controles de dirección

PiradoIV

#4 Prueba "onfocus" en ese caso.

NeB1

yo lo haría como #5. Ya que el evento onchange siempre dispara. El único problema es que el elemento que tiene que ejecutar sea el primero de la lista y ya esté seleccionado.

Usuarios habituales

  • NeB1
  • PiradoIV
  • Shendraf
  • eXtreM3
  • LR
  • RaymaN