2012-02-27 36 views
5

Tôi đang sử dụng this jquery plugin để thêm thành công cookie vào ứng dụng jQuery Ajax trên trang web.Duy trì cookie jQuery

Nhưng, câu hỏi rất ngắn của tôi là, làm cách nào để đặt cookie tồn tại không xác định?

Tôi đang cố ghi nhớ cài đặt tùy chọn của người dùng bằng cách lưu trữ chúng lâu dài trong cookie chứa một mảng dữ liệu duy nhất cho mỗi người dùng.

Cảm ơn bạn.

+1

bạn có thể sử dụng localstorage để lưu trữ dữ liệu của mình và gửi dưới dạng cookie bất cứ khi nào bạn muốn. – deantoni

Trả lời

4

Bạn không thể đặt cookie thành "không bao giờ" hết hạn, nhưng bạn có thể làm tốt như vậy.

Thông thường, tôi muốn đặt cookie trong 30 ngày và gia hạn chúng bất cứ khi nào người dùng truy cập trang. Miễn là người dùng không rời khỏi trong một tháng, cookie là vĩnh viễn.

1

Có thể bạn có thể thử đặt tùy chọn hết hạn thành: 9999. Đây có thể là giải pháp cho bạn.

$.cookie('the_cookie', 'the_value', { expires: 9999 }); 

Nhưng không có tùy chọn hợp lệ cho vô hạn.

Chỉ cần thử nghiệm các giá trị. Nhưng nó là một ý tưởng tốt để lưu nó vào cookie? Bởi vì nếu người dùng nào đó gỡ bỏ các cookie thì sẽ vẫn còn. Bạn có xem xét lưu "thuộc tính" vào cơ sở dữ liệu không?

15

Bạn không thể đặt cookie tồn tại vô thời hạn. Bạn tạo một cookie liên tục bằng cách đặt ngày hết hạn trên đó và khi ngày hết hạn phải có giá trị cụ thể, đó là khi cookie sẽ hết hạn.

Bạn có thể làm cho các tập tin cookie sống trong vòng một năm, ví dụ:

$.cookie('the_cookie', 'the_value', { expires: 365 }); 

Bạn cũng có thể sử dụng một đối tượng Date cho ngày hết hạn, nhưng bạn nên giữ ngày ở phía bên này của năm 2038, như một số hệ thống không hỗ trợ ngày sau đó.

+0

Vâng, đó là những gì tôi tìm thấy sau khi một số googling - thật không may. Cảm ơn – sisko

Các vấn đề liên quan