Se me ocurre que asignes a cada opción un atributo
personalizado con el respectivo correo electrónico y al final del
<select>
, añade un
campo oculto en el cual cargaremos el correo electrónica de la opción seleccionada, luego, cuando se produzca el evento
change
en el
<select>
, ejecutarás una función en la que tomarás el correo electrónico guardado en el atributo personalizado de la opción seleccionada y lo asignarás al campo oculto.
Un ejemplo:
Código HTML:
Ver original<select onchange = "asignar(this.options[this.selectedIndex].dataset.email)">
<input type = "hidden" id = "oculto" />
Código Javascript
:
Ver originalfunction asignar(email){
document.querySelector("#oculto").value = email;
}
Esto es lo que envío como parámetro a la función:
- this: Hace referencia al
<select>
. - options: Representa al conjunto de opciones del
<select>
. - selectedIndex: Es el índice de la opción seleccionada dentro del conjunto de opciones. El primero es 0.
- dataset: Atributo con el cual puedo obtener el valor de un atributo personalizado. Más información.
- email: El nombre del atributo personalizado
Saludos