2010-04-06 43 views
5

Câu hỏi này trộn lẫn tập lệnh phía máy khách với phân tích phía máy chủ.JavaScript và ASP.NET - Cookie với các cặp khóa/giá trị

Trong một số trường hợp, tôi đang viết cookie cho trình duyệt của người dùng bằng cách sử dụng thuộc tính document.cookie. Trong các trường hợp khác, tôi đang viết cùng một cookie cho trình duyệt của người dùng thông qua đối tượng ASP.NET Response.

Khi tôi đang viết HttpCookie ở phía máy chủ, tôi đang sử dụng bộ sưu tập Giá trị (http://msdn.microsoft.com/en-US/library/system.web.httpcookie.values%28v=VS.80%29.aspx) để lưu trữ cặp khóa/giá trị trong cookie. Tôi cũng muốn có thể viết các cặp khóa-giá trị cho cookie thông qua JavaScript.

Làm cách nào để tạo cookie bằng cặp khóa/giá trị thông qua JavaScript mà ASP.NET có thể phân tích cú pháp?

Cảm ơn bạn!

Trả lời

2

Bạn có thể lấy giá trị của cookie chính thông qua javascript không.

Ví dụ: nếu tên cookie chính của bạn là UserDetails và các phần tử con là FirstName và LastName asp.net nên đặt giá trị Cookie UserDetails như sau.

FirstName = Jon & LastName = Doe

Cảm ơn,

0

Có một Request.Cookies mà bạn có thể sử dụng để đọc các giá trị cookie.

HTH.

+0

Tôi tin rằng OP được hỏi nếu anh ta có thể bắt chước các ký hiệu thu NameValuePair trong cookie trên các mặt hàng (ví dụ thêm các mục vào cookie bằng cách sử dụng tên-giá trị-cặp mà C# sẽ hiểu trong mã-đằng sau) .. –

0

Gần đây tôi đã viết a blog post about this exact topic. Đây là hoạt Javascript để tạo ra một ASP.NET HttpCookie tương thích với đa giá trị cookie:

var setMultiValuedCookie = function(name, values) { 
    var valuePairs = []; 
    for (var n in values) { 
     valuePairs.push(n + "=" + values[n]); 
    } 
    var cookieValue = valuePairs.join("&"); 
    document.cookie = name + "=" + cookieValue; 
}; 

// Usage: 
setMultiValuedCookie("TestCookie", { firstName: "John", lastName: "Doe" }); 
Các vấn đề liên quan