无法使用C#访问URL的#param值

时间:2013-08-03 16:29:59

标签: c# asp.net jquery

在我的页面中,我有一个搜索和过滤的ajax调用以及我作为# param附加在URL中的所有过滤器选择(作为查询字符串形式附加,它将刷新页面)。

我的问题是我无法在后面的代码中访问此(#值)(使用c#)。

我尝试将#值存储在javascript的window.load函数的隐藏字段中,但我不会在asp.net的页面加载方法中获得此值。

有人可以建议如何在页面加载时访问此值吗?

1 个答案:

答案 0 :(得分:1)

好吧,#没有发送到服务器(它不在请求中),你可以通过javascript访问它,例如:

var hash = window.location.hash;
if (hash !== "") {
    hash = hash.substring(1);
    alert(hash);
}

如果你必须在服务器上访问它,我很害怕你必须放置一个查询字符串:

http://yoururl/?test=123

然后您访问:Request.QueryString["test"] - 将为您提供123。