0

我想重定向一个带有#的链接的页面。由于 # 之后的值不会通过 HTTP 请求发送到服务器,因此我在 Razor 视图中编写了如下脚本。

$(document).ready(function () {
if (window.location.hash) {
var url = window.location.href.toLowerCase().replace("ug_101", "UG");
window.location = url;
}

我将代码放在页面顶部,但仍会在重定向之前呈现父视图中的元素。如何在不加载父视图的情况下重定向?或者如何在 C# 中的 URL 中获取 # 之后的值?

4

1 回答 1

0

您将代码放在一个.ready()函数中,因此在页面部分加载之前不会执行 jQuery。

尝试使用如下所示的脚本:

if (window.location.hash) {
var url = window.location.href.toLowerCase().replace("ug_101", "UG");
window.location = url;

它们都不是 jQuery,也不需要加载页面的任何部分,因此该.ready()方法会无缘无故地导致您的延迟。

于 2012-04-26T04:47:47.040 回答