J'ai une page maître sur laquelle je veux vérifier si l'utilisateur a désactivé son javascript puis rediriger vers une simple page error.aspx
Réponses:
5 pour la réponse № 1Sur Masterpage, ajoutez simplement ce code
<noscript>
<% Response.Redirect(Url.Action("ActionName","ControllerName")); %>
</noscript>
Si l'utilisateur a désactivé le javascript, il sera redirigé vers une action spécifique du contrôleur.
4 pour la réponse № 2
La façon habituelle d’aborder ce problème est de rediriger un utilisateur ayant javascript. activée et afficher l'erreur pour l'utilisateur qui l'a désactivée en utilisant le noscript
marque.
<script type="text/javascript">
location.href = "pagethatneedsjavascript.aspx";
</script>
<noscript>
This page needs JavaScript enabled!
</noscript>
Alternativement, si votre page n’est pas la première page que l’utilisateur chargerait dans la session en cours, vous pouvez ajouter un lien vers la page, comme
<a href="/linktopage.aspx?js=disabled"
onclick="location.href="/linktopage.aspx?js=enabled";return false;">the page</a>
Si l’utilisateur a désactivé javascript, il ira à la page référencée dans le href
attribut, s'ils l'ont activé le JavaScript dans le onclick
attribut sera exécuté à la place.
Vous pouvez ensuite, côté serveur, lire la variable de chaîne de requête et la rediriger si elle est égale à "désactivé"
if ( Request.QueryString["js"] == "disabled" ) {
Response.Redirect("error.aspx");
}
Notez que si la page est bookmarkable, l'utilisateur peut se retrouver sur la page en utilisant js = enabled sans que js ne soit réellement activé.