我有一個可怕的時間試圖找出這一點,搜索沒有得到任何好的結果。從js cookie讀取.net代碼中的多值cookie
我在使用jQuery頁面中創建一個cookie,像這樣
var cookieData = {
tb1Relation: $("#<%= tb1Relation.ClientID %>").val(),
tb2Fname: $("#<%= tb2Fname.ClientID %>").val()
}
$.cookie("Relation", $.param(cookieData));
但是當我到代碼隱藏,我可以看到Cookie,但這些值是不分離的,因爲它的編碼,所以它把它像一個價值而不是多重。所以:
Request.Cookies("Relation")("tb1Relation")
顯示爲沒有
和Request.Cookies時( 「關係」)值= 「tb1Relation%3Dsomething%26tb2Fname%3Dsomethingelse」
從我可以告訴它,因爲cookie是urlencoded,但我無法弄清楚如何取消它們的Request.Cookies對象。
我最後一種情況是下面的情況,但它很糟糕,我真的想避免這種情況。
Request.Cookies("Relation").Value = HttpUtility.UrlDecode(Request.Cookies("Relation").Value)
Dim cookiesSplit() As String = Request.Cookies("formData2").Value.Split("&")
'Splits the first array entry into id/val - Really lame though
Dim cookieIdVal() As String = cookiesSplit(0).Split("=")
我完全錯過了更好的解決方案嗎?
編輯:修正了一些代碼,因爲我看起來像是指向了錯誤的東西。現在應該更有意義