jquery는 쿠키에 json 데이터 객체를 저장합니다.
쿠키에 JSON 데이터를 저장하려면 어떻게해야합니까?
내 JSON 데이터는 다음과 같습니다.
$("#ArticlesHolder").data('15', {name:'testname', nr:'4',price:'400'});
$("#ArticlesHolder").data('25', {name:'name2', nr:'1', price:'100'});
$("#ArticlesHolder").data('37', {name:'name3', nr:'14', price:'60'});
그리고 나는 다음과 같은 것을하고 싶다.
var dataStore = $.cookie("basket-data", $("#ArticlesHolder").data());
데이터를 검색하는 난에로드 할 $("#ArticlesHolder")
같은
$.each($.cookie("basket-data"), function(i,e){
$("#ArticlesHolder").data(i, e);
});
내가 올바른 길을 가고 있는지 아니면 다른 방식으로해야하는지 아는 사람이 있습니까? 간단히 말해서, 쿠키에서 json 데이터를 어떻게 넣고 가져 오나요?
다음과 같이 데이터를 JSON으로 직렬화 할 수 있습니다.
$.cookie("basket-data", JSON.stringify($("#ArticlesHolder").data()));
그런 다음 쿠키에서 가져 오려면 :
$("#ArticlesHolder").data(JSON.parse($.cookie("basket-data")));
이전 브라우저 (IE <8)에는 기능 을 가져 오기 위해 json2.js 가 포함되어 있으므로 데이터 개체 에 의존 JSON.stringify()
하고JSON.parse()
직렬화 / 역 직렬화합니다 . 이 예에서는 jQuery 쿠키 플러그인을 사용합니다.JSON
이제 이미 JSON.stringify
명시 적으로 사용할 필요가 없습니다 . 이 코드 줄을 실행하십시오.
$.cookie.json = true;
그런 다음 쿠키에 모든 객체를 저장할 수 있으며, 쿠키를 읽을 때 JSON으로 자동 변환되고 JSON에서 다시 돌아옵니다.
var user = { name: "name", age: 25 }
$.cookie('user', user);
...
var currentUser = $.cookie('user');
alert('User name is ' + currentUser.name);
하지만 JSON 라이브러리에는 jquery.cookie가 포함되어 있지 않으므로 직접 다운로드하여 jquery.cookie.js 앞에 HTML 페이지에 포함시켜야합니다.
사용 JSON.stringify(userData)
문자열로 coverty의 JSON 개체에.
var dataStore = $.cookie("basket-data", JSON.stringify($("#ArticlesHolder").data()));
쿠키 사용에서 돌아 가기 위해 JSON.parse()
var data=JSON.parse($.cookie("basket-data"))
반환 된 값을 JSON.stringify(userData)
쿠키 에 저장하는 것은 좋지 않습니다 . 일부 브라우저에서 버그가 발생할 수 있습니다.
사용하기 전에 base64 로 변환 (사용 btoa
)하고 읽을 때 base64 에서 변환 (사용 atob
)해야합니다.
val = JSON.stringify(userData)
val = btoa(val)
write_cookie(val)
데이터를 JSON 및 Base64로 직렬화하면 종속성 jquery.cookie.js :
var putCookieObj = function(key, value) {
$.cookie(key, btoa(JSON.stringify(value)));
}
var getCookieObj = function (key) {
var cookie = $.cookie(key);
if (typeof cookie === "undefined") return null;
return JSON.parse(atob(cookie));
}
:)
Try this one: https://github.com/tantau-horia/jquery-SuperCookie
Quick Usage:
create - create cookie
check - check existance
verify - verify cookie value if JSON
check_index - verify if index exists in JSON
read_values - read cookie value as string
read_JSON - read cookie value as JSON object
read_value - read value of index stored in JSON object
replace_value - replace value from a specified index stored in JSON object
remove_value - remove value and index stored in JSON object
Just use:
$.super_cookie().create("name_of_the_cookie",name_field_1:"value1",name_field_2:"value2"});
$.super_cookie().read_json("name_of_the_cookie");
참고URL : https://stackoverflow.com/questions/4225030/jquery-save-json-data-object-in-cookie
'programing tip' 카테고리의 다른 글
Emacs에서 Linux의 다른 응용 프로그램으로 텍스트를 복사하는 방법 (0) | 2020.08.09 |
---|---|
GNU 스크린 서바이벌 가이드 (0) | 2020.08.09 |
SQL 쿼리가 매일 실행되도록 작업을 예약하는 방법은 무엇입니까? (0) | 2020.08.09 |
변수 이름을 문자열로 가져 오기 (0) | 2020.08.09 |
파일 암호화를위한 AES vs Blowfish (0) | 2020.08.09 |