從URI
回答
這是不可能的,因爲客戶沒有「錨部分」發送到服務器
舉個例子,下面是谷歌瀏覽提交http://example.com/#foobar
後產生的確切請求(使用Wireshark的記錄):
GET/HTTP/1.1
Host: example.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/532.3 (KHTML, like Gecko) Chrome/4.0.223.11 Safari/532.3
Cache-Control: max-age=0
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
If-None-Match: "b300b4-1b6-4059a80bfd280"
If-Modified-Since: Tue, 15 Nov 2005 13:24:10 GMT
請參閱no #foobar。所以服務器應用程序無法讀取它。
你可以做一些JavaScript的魔術來將錨點存儲在cookie或隱藏的輸入字段或任何你想要的巫術。但它不會適用於不是源自您自己的網站的請求。在查詢字符串的服務器部分做任何你需要的東西並且只使用僅用於純JavaScript任務的錨點 - 或者用它在簡單的HTML文檔中導航 - 但這就是90年代了)。
這裏的自提RFC 1808的重要組成部分:
注意,片段標識符(和它前面的「#」)是 沒有考慮URL的一部分。但是,由於它在與URL相同的字符串上下文中通常使用 ,因此解析器必須能夠在出現片段時識別該片段,並將其作爲 解析過程的一部分。
有關信息,[RFC 1808](http://www.ietf.org/rfc/rfc1808.txt),它解釋了爲什麼錨部分不發送到服務器。 – 2014-07-10 10:20:45
該解決方案將只工作後一個提交按鈕被按下,但:你可以使用JavaScript來把你的形式設置爲document.location價值的隱藏價值。這會告訴你到底是什麼瀏覽器看到你的地址。
我想你想製作一個可收藏的Ajax web應用程序,並且你想要替換DOM的某些片段而不用重新加載整個頁面。 (否則,您可以使用查詢參數。)由於sfussenegger提到,瀏覽器不會向服務器傳輸'錨'。解決方案在客戶端。
Javascript window.location.hash
給出錨點信息。您可以將追加window.location.hash
的事件處理程序追加到window.onload
事件中,並通過Ajax XHttpRequest將其發送到服務器。您可以捕獲響應並將其構建到DOM中。
不幸的是,這是兩個客戶端服務器往返。
更多關於這在ajaxpatterns。
- 1. 從URI
- 2. SPARQL:從URI
- 3. 笨從和URI
- 4. 從絕對URI
- 5. PowerShell的 - 從URI
- 6. 如何檢測URI是否是從URI
- 7. 從holder.imageView獲取URI?
- 8. 機器人:從URI
- 9. URI :: InvalidURIError(壞URI(不是URI?):):
- 10. 如何創建從TEL URI
- 11. 從Uri獲取位圖
- 12. 獲得從返回的Uri
- 13. 添加要從包URI
- 14. 從絕對Uri獲取流
- 15. Java:從URI構建文件?
- 16. 從字符串驗證Uri
- 17. 從Uri創建文件
- 18. 從位圖獲取URI?
- 19. 從URI獲取文件base64
- 20. 從捆綁獲取URI
- 21. IOS5:NSInvalidArgumentException從URI表示
- 22. 無法從data.getData獲取Uri
- 23. 如何從URI字符串
- 24. 從DownloadStringCompletedEventArgs獲取錯誤Uri
- 25. 從IClientMessageInspector獲取請求URI
- 26. 正則表達式從URI
- 27. Java:從FilePath獲取URI
- 28. (URI :: InvalidURIError)「錯誤的URI(不是URI?)
- 29. URI :: InvalidURIError壞URI(不是URI?):使用Tanker
- 30. 如何從uri中的Draweritem中的uri加載圖標/頭像
下面是一個類似PHP的問題,提供了類似的解決方案:http://stackoverflow.com/questions/1032242/how-to-obtain-anchor-part-of-url-after-in-php – 2009-10-28 13:43:11