如何将JSON数据保存到cookie中?
我的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);
});
有没有人知道我是否在正确的轨道上,或者应该用其他方式来做这件事?简单地说,我如何从cookie中放入和拉取json数据?
发布于 2010-11-19 20:42:00
您可以将数据序列化为JSON,如下所示:
$.cookie("basket-data", JSON.stringify($("#ArticlesHolder").data()));
然后从cookie中获取它:
$("#ArticlesHolder").data(JSON.parse($.cookie("basket-data")));
这依赖于JSON.stringify()
and JSON.parse()
来序列化/反序列化您的数据对象,因为旧的浏览器(IE<8)包括json2.js来获得JSON
功能。此示例使用jQuery cookie plugin
发布于 2013-01-23 05:51:03
现在已经不需要显式地使用JSON.stringify
了。只需执行这行代码
$.cookie.json = true;
在此之后,您可以将任何对象保存在cookie中,当读取cookie时,该对象将自动转换为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页面中
发布于 2010-11-19 20:42:39
使用JSON.stringify(userData)
将coverty json对象转换为字符串。
var dataStore = $.cookie("basket-data", JSON.stringify($("#ArticlesHolder").data()));
为了从cookie中返回,可以使用JSON.parse()
var data=JSON.parse($.cookie("basket-data"))
https://stackoverflow.com/questions/4225030
复制相似问题