2012-01-06 69 views

回答

10

我跟大家同意#應該是一個?,只是FYI:

注意它實際上不可能得到船錨的URL,例如:

http://test.com/test.aspx#id=test

的問題是,#指定在頁面的錨,所以瀏覽器認爲:

http://test.com/test.aspx

,然後查找在頁面

<a id="test">Your anchor</a> 

由於這是客戶端,您需要將#從URL中轉義出來 - 因爲瀏覽器已將其剝離,所以無法在服務器上獲取它。

如果您希望#之後的部分必須在將請求發送到服務器之前使用Javascript進行復制,並將值放入查詢字符串中。

這裏c# get complete URL with "#"

2

是不是應該是?

http://test.com/test.aspx?id=test 
6

您的網址無效。

http://test.com/test.aspx#id=test 

書籤命名爲id=test

您應該使用

http://test.com/test.aspx?id=test 

然後Request.QueryString["id"]會工作。

+0

它的API調用,所以我什麼都做不了。 – PrateekSaluja 2012-01-06 13:10:01

+0

什麼是API調用? – 2012-01-06 13:34:33

+0

我看你走過了漫長的路程@HenkHolterman。擁有193K的聲望和0.05%的最高分,或者你可能現在知道一個API調用是哈哈。 – quemeful 2017-08-24 14:41:08

8

查詢字符串以問號?開頭,不是散列#

嘗試:

http://test.com/test.aspx?id=test 

使用散列函數,你問到文檔中跳轉到一個命名錨,不提供查詢字符串

4

更多信息如果你想使用它作爲哈希標籤可以使用:

string value = Request.Url.ToString().Split('#')[1]; 

與此代碼,你有你自己的哈希標籤值。

+0

謝謝我已經修好了。 – PrateekSaluja 2013-04-03 20:48:28