2014-04-19 25 views
9

是否有允許在URI片段中指定多個參數的標準格式?URL片段中的多個參數

(哈希#查詢字符串後的部分)最相關的信息會是這樣一個問題:Multiple fragment identifiers correct in URL?。片段中允許的字符也可以在該問題中找到。

難道是可以接受的使用,例如,一個分號來分隔多個參數是這樣的:

http://example.net/page.html?q=1#param1=foo;param2=bar 

有沒有我應該知道用這種方法的任何無意的行爲?如果文檔中沒有這樣的ID,那麼值爲param1會怎麼樣?

就這個問題而言,只考慮HTML資源的URI。

回答

7

我想你應該閱讀:http://en.wikipedia.org/wiki/Fragment_identifier#Examples

所以對於多個參數的事實上的標準格式應該是#param1=value1&param2=value2 你可以看到這種方式使用的媒體片段URI 1.0和PDF文檔。雖然HTML資源似乎沒有標準,但您可以用任何您喜歡的方式在JavaScript中解析片段。但我會使用相同的格式,因爲它看起來更自然,與查詢字符串格式相似。如果瀏覽器找不到任何id/name等於散列片段的元素,默認情況下它將導航到文檔的開頭。

此外,瀏覽器會將整個散列片段視爲可能的id /名稱。所以他們會尋找等於param1=value1&param2=value2的id/name,但不僅僅是param1

+1

此外,如果您有興趣使您的AJAX應用程序可以通過搜索引擎進行抓取,以下是Google關於使用哈希片段#的一個指南! https://developers.google.com/webmasters/ajax-crawling/docs/getting-started?csw=1 – lagivan