在我的asp.net mvc的網頁我創建呈現爲一個鏈接:爲什麼這個查詢字符串無效?
http://localhost:3035/Formula/OverView?colorId=349405&paintCode=744&name=BRILLANT%20SILVER&formulaId=570230
根據W3C驗證,這是不正確的第一符號之後,它的錯誤。它抱怨的&不被編碼,並且該實體& p無法識別等
AFAIK的&不應被編碼,因爲它是爲關鍵值對的隔板。
對於那些關心:我發送這些語法作爲查詢字符串,而不是「/」分離的值,因爲沒有體面的方式傳遞我知道的可選參數。
把所有的位一起:
- 錨(<一>)標記的href屬性需要的編碼值
- &編碼到&安培;
- 編碼的「&」當它是你的參數值的一部分,使用26%
豈不編碼符號爲&使我的參數值的一部分? 我需要它分開第一個變量
事實上,通過編碼我的href值,我擺脫了錯誤。然而,我現在想知道的是,如果我的colorId是「123 & 456」,那麼&符號就是值的一部分。 由於必須對分隔符進行編碼,因此如何處理編碼的&符號。他們需要兩次編碼才能說話嗎?
因此,要獲得的網址:
www.mySite.com/search?query=123&456&page=1
我應該我href的值是什麼?
另外,我覺得我對第一人在世界上關心這個..去檢查www和計算得到他們的查詢字符串在W3C驗證驗證頁面..
你需要在所有的HTML文檔每一個實體(也有一些例外,比如裏面的腳本標記)進行編碼。將doctype設置爲XHTML不會導致他的頁面進行驗證。 – Illandril 2008-11-19 19:21:50
我並不是說要將doctype改爲XHTML就可以修復它,但是,正如你所說的,屬性中的實體應該被編碼爲所有的HTML變體,我改變了答案以反映這一點。 – 2008-11-19 19:40:46