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기능성이 예에서는 jQuery cookie 플러그인을 사용합니다.
이제 이미 사용할 필요가 없습니다.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)문자열에 ty 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));
}
:)
이것을 사용해 보십시오: https://github.com/tantau-horia/jquery-SuperCookie
빠른 사용:
create - cookie 만들기
체크 - 존재 확인
verify - JSON인 경우 쿠키 값을 확인합니다.
check_index - JSON에 인덱스가 있는지 확인합니다.
read_values - 쿠키 값을 문자열로 읽습니다.
read_JSON - 쿠키 값을 JSON 개체로 읽습니다.
read_value - JSON 개체에 저장된 인덱스의 읽기 값
replace_value - JSON 개체에 저장된 지정된 인덱스의 값 바꾸기
remove_value - JSON 개체에 저장된 값 및 인덱스를 제거합니다.
그냥 사용:
$.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' 카테고리의 다른 글
| 하나의 쿼리에서 여러 테이블에 삽입 (0) | 2023.09.04 |
|---|---|
| xml이 아닌 코드를 사용하여 ImageView 마진을 설정하는 방법 (0) | 2023.09.04 |
| 자바.java.java런타임예외:작업 ComponentInfo를 인스턴스화할 수 없습니다. (0) | 2023.09.04 |
| 이벤트를 한 번만 바인딩 (0) | 2023.09.04 |
| 필드가 조건과 일치하지 않는 테이블에서 선택 (0) | 2023.09.04 |