Saber si Javascript no esta habilitado en el navegador en asp.net

Hola a todos.

llevo bastante tiempo sin escribir pero es debido al tiempo :D estaba haciendo unas revisiones y me tope con la necesidad de saber si nuestro script se ejecuta o no. coloquemos un ejemplo digamos que mostramos un mensaje al usuario usando alert y si javascript no esta habilitado este usuario no recibirá esta notificación  despues de un rato pensar y explorando entre lo brindado por asp.net llegue a una conclucion senccilla:

colocar un hiddenfield en la pagina pasarle un valor por javascript  en el evento load luego cuando vaya a imprimir el mensaje verifico si ese hiddenfield contiene el valor pasado por javascript si no es así  quiere decir que javascript no esta actualmente habilitado en el navegador entonces lo que hago es mostrar el mensaje en un label que esta visible a la vista.

esa es la explicación teórica ahora les comparto el código que hice para realizar este proceso:


1
2
3
4
5
6
String idHF = HiddenField1.ClientID;

String alerta;

      alerta = "<script> theForm." + idHF + ".value='_true'; </script>";
      ScriptManager.RegisterStartupScript(this, typeof(Page), 'alerta', alerta, false);

Luego antes de enviar la alerta para este caso se verifica cual es el valor del hiddenfield si es _true quiere decir que si esta habilitado javascript en el navegador.

Esto es un ejmplo basico pero se puede extender muy facilmente para implementar otras funcionalidades.


Nota: Hay que saber que es diferente que el navegador no soporte javascript a que el navegador si soporta javascript pero no tienen javascript habilitado actualmente. para este segundo caso es que se aplica el método que acabo de mostrar.