【问题标题】:Is there a way to check if JavaScript is disabled from controller有没有办法检查控制器是否禁用了 JavaScript
【发布时间】:2013-01-15 01:59:12
【问题描述】:

我很确定这是不可能的,但我只是想我会把它扔在那里。如果浏览器禁用了 JavaScript,我想知道控制器是否有办法(在呈现视图之前)。我相信其他人在 SEO 上也遇到过这个问题。

【问题讨论】:

    标签: c# javascript .net asp.net-mvc browser


    【解决方案1】:

    不。服务器无法查看客户端以确定浏览器启用了哪些功能。但是,如果禁用了 js,您可以使用 noscript 标记来呈现内容。

    如果你想记录它是否启用了分析,那么一旦页面加载,在 javascript 中发送一个 ajax 调用怎么样?如果js被禁用,调用将无法通过。

    【讨论】:

      【解决方案2】:

      没有。只有当请求是通过 ajax 时,才会在标头中遇到任何有用的信息。

      作为一种解决方法(和完全破解),您可以在 html 的最顶部放置一个脚本来设置 cookie 并刷新页面。然后后端可以检查该 cookie 并知道是否启用了 JS。

      【讨论】:

        【解决方案3】:

        不。您只能在视图至少渲染一次后才能知道。在这种情况下,您可以做的是发送一个 ajax 请求以确认 javascript 正在为此会话工作。

        当然总有 noscript 标签:https://developer.mozilla.org/en-US/docs/HTML/Element/noscript

        【讨论】:

          猜你喜欢
          • 2020-11-25
          • 2014-12-22
          • 2019-03-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-02-19
          • 1970-01-01
          相关资源
          最近更新 更多