Es que el evento onchange no se produce en los option por lo que no tiene sentido tratar de asignarlo de la forma como estás haciendo, lo que podrías hacer dentro de ese bucle for en que recorres todos los option es ver cuál de ellos coincide con el value del select (o sea, el value seleccionado), o hasta más fácil aún usar el selectedIndex para obtener el índice que podrías usar para obtener la referencia al option seleccionado.
P.S.: No es necesario crear un nuevo tema para tratar sobre la misma temática

.