Page.Request.Browser.EcmaScriptVersion indiquera ce ASP.NET pense est vrai. Cela suppose que les BrowserCaps sont corrects. Il vous donne une indication de premier passage qui est probablement assez proche.
EDIT: J'ai d'abord mal compris la question (activé contre supporté). Vous pouvez utiliser le côté serveur BrowserCaps pour éliminer les UserAgents qui ne prennent pas en charge le code JavaScript. Ensuite, utilisez une ligne de script sur chaque requête afin de déterminer si elle est activée par cookie:
// let the server know JavaScript is enabled via session cookie
document.cookie = "js=1; path=/";
détectera alors côté serveur existence:
HttpCookie cookie = HttpContext.Current.Request.Cookies.Get("js");
bool js = (cookie != null) && (cookie.Value == "1");
Une fois qu'ils ferment le navigateur ce cookie disparaîtra.
J'espérais quelque chose plus propre, mais si c'est la seule façon qui peut être fait ... Je vais le stocker dans une session var et avoir une méthode accesseur pour le rendre plus propre. – Fermin