2012-07-12 92 views
0

即时获取数据从一个页面到另一个页面,我已经使用查询字符串来传递数据。而像这样:从javascript中的查询字符串中获取数据

?redesigndata={"jsondata": "{\"images\":[ {\"src\":\"images/bgset.jpg\"},{\"src\":\"images/ar019.png\"}]}","product_hardware": "silver","product_thread": "white","product_lining": "Blue","product_lining_loc": "images/lining/blue_80x32.jpg"} 

如何从它删除所有\,然后把它放到一个对象或任何像这样的东西用JavaScript或jQuery的:

redesigndata = { 
    "jsondata": "{"images":[ {"src":"images/bgset.jpg"},{"src":"images/ar019.png"}]}", 
    "product_hardware": "silver", 
    "product_thread": "white", 
    "product_lining": "Blue", 
    "product_lining_loc": "images/lining/blue_80x32.jpg" 
} 
+1

['$ .param'(http://api.jquery.com/jQuery.param/) – MilkyWayJoe 2012-07-12 17:47:27

回答

2

location.search将让你的查询字符串(先从?)。脱掉?,拆分它在=,然后JSON.parse它。

var jsonStr = location.search.substring(1).split('='); 
var obj = JSON.parse(unescape(jsonStr[1])); 

然后你可以解析jsondata

var jsondata = JSON.parse(obj.jsondata); 
2

为什么你会删除这些反斜线?没有他们,你的JSON将不再有效。现在你已经嵌套JSON这样你就可以这样分析它(与str作为redesigndata值):

var redesigndata = JSON.parse(JSON.parse(str).jsondata); 
+0

我不知道的反斜杠是很重要的。谢谢 – 2012-07-12 17:48:06

相关问题