Mi opinión es un poco diferente a otras respuestas.
El objetivo no es ocultar las opciones, sino simplemente desactivarlas (para mantener la IU constante).
Mi Escenario:
tengo varias selecciona en una forma y cuando un usuario selecciona una opción en una de las selecciona las otras selecciona debería desactivar esta opción y viceversa. El usuario tiene restringida la selección de la misma opción que ya está seleccionada. Normalmente desactivamos la opción pero para IE 7 que no la admite. El usuario también tiene la opción de agregar nuevas selecciones.
Solución:
En carga:
Si el navegador es Internet Explorer 7 a continuación, al rellenar los los selecciona y deshabilitar las opciones ya seleccionados en otras selecciona Estoy añadiendo un atributo personalizado a la opción ("Data- ie7-disabled ") y también cambiando el color de las opciones desactivadas a '#cccccc' (que es el color estándar para las opciones desactivadas). Esto hace que la interfaz de usuario se vea igual en todos los navegadores.
En cambio:
guardo la opción anterior en una variable local (esto se guarda en el foco).
Cuando un usuario intenta cambiar una opción
usuario selecciona una nueva opción completa que no está seleccionado en cualquier otro desplegable. Luego recorro otras selecciones y cambio el color y agrego un atributo personalizado a esta opción seleccionada en otras selecciones.
Cuando el usuario selecciona una opción que ya está seleccionada (La opción que tiene color gris). Verifico si la opción tiene este atributo personalizado primero. Si tiene entonces> simplemente revertir la opción a la anterior con un mensaje de error que dice "Esta opción ya está seleccionada o BLAH BLAH".
Cuando el usuario cambia su opción existente a una nueva opción que no está seleccionada en ningún otro menú desplegable. Otra vez recorro todas las demás opciones de selección y elimino el color y el atributo personalizado.
Espero que esto ayude.
Si mal no recuerdo, IE no reconoce deshabilitado para la etiqueta 'option'. –