Cómo hacer que Javascript sepa que se seleccionó un elemento desplegable

Sí, necesitas JavaScript.

Supongo que te refieres

¿Cómo se detecta el cambio en un elemento seleccionado?

El evento a manejar es el evento de cambio. El evento de clic tiene problemas de navegador cruzado y debe evitarse.

Una selección necesita un primer elemento vacío para manejar el cambio correctamente y también para permitir una validación que de otra manera no funcionaría.


Dado este selecto

Seleccione
Primera opción
Segunda opción

puedes usar este código

window.onload = function () {// cuando la página se ha cargado
document.getElementById (“select1”). onchange = function () {
var val = this.value;
}
}

Elijo usar el controlador de eventos onchange ya que es el más compatible entre navegadores (más antiguos).

Supongo que la lista desplegable es la etiqueta “select”.

entonces necesita escuchar el evento de cambio del elemento. algo como:

document.querySelector (“seleccionar”)
.addEventListener (“cambio”, función (evt) {
alerta (evt.target.value)
})

Ejemplo: Editar violín – JSFiddle

Estás en lo correcto. El código de muestra de lo que desea hacer está en el siguiente enlace: se trata de escuchar el evento “cambio” en la lista desplegable. La forma en que realmente se genera la lista (PHP, a mano, de alguna otra manera) prácticamente no tiene importancia aquí.

Documentación de MDN para el evento de cambio

Utilice la función .on (“clic”, función () {})