/ / Comment rediriger si javascript est désactivé dans asp.net mvc masterpage - javascript, asp.net-mvc

Comment rediriger si javascript est désactivé dans asp.net mvc masterpage - javascript, asp.net-mvc

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 № 1

Sur 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é.