c# - 如果未启用 JavaScript,则重定向

标签 c# javascript jquery redirect meta-tags

我正在研究一种逻辑,如果未启用 JavaScript,我希望用户被重定向到特定页面。我已经放置了一个元标记,它将每隔几秒刷新一次,如果启用了 JavaScript,并且我想使用 JavaScript 来删除该元素。

我尝试了很多方法,但未能成功删除标签。我还尝试清空标签的内容,但它仍然重定向。

还有其他方法可以解决这个问题吗?

我发布一些代码给你看一下,我只是从网上抓取它,但当我调试代码时似乎清空了内容:

var m = $('meta');

for (var c = 0; c < m.length; c++) {
    m[c].parentNode.removeChild(m[c]);
    m[c].content = '';
}

我也愿意接受服务器端解决方案,但客户端不会发送太多信息,例如是否启用了 javaScript......

最佳答案

试试这个:

// THIS DOES NOT WORK
$( 'meta[http-equiv="refresh"]' ).remove();

这当然取决于您的 jQuery 代码执行的速度以及刷新触发的速度...

更新:上述方法不起作用。即使元元素从 DOM 中删除,浏览器仍然会执行刷新。

现场演示: http://www.ecmazing.com/misc/test-removing-meta-element/

<小时/>

我相信你也应该能够做到这一点:

<noscript>
    <meta http-equiv="refresh" content="..."> 
</noscript>

因此,如果您将元元素包装在 NOSCRIPT 元素中,则只有在禁用 JavaScript 的情况下才应解析它。

在此处了解 NOSCRIPT 元素:https://developer.mozilla.org/en/HTML/Element/noscript

关于c# - 如果未启用 JavaScript,则重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11054743/

相关文章:

c# - 创建返回正则表达式匹配命令的类的最佳方法

javascript - 在 javascript/NodeJS 中通过 WebSocket 发送 pong 帧?

javascript - 如何使用 Ajax 显示 WordPress 查询

javascript - 在移动设备或特定分辨率下添加 <br> 标签

c# - C# 异步套接字方法(BeginSend/BeginReceive 等)必须是静态的吗?如果是这样,为什么?

c# - WiX 安装 EventSource

javascript - jQuery 动画试图淡化白色边框 IN

php - 为什么Ajax搜索返回0?

c# - 使用Caliburn Micro Framework将文件拖放到WPF中

javascript - HTTP 中的数据传输