【发布时间】:2011-01-10 23:20:44
【问题描述】:
这与这个问题json get key names as text? 几乎完全相同,但该响应对我不起作用。
我有一个 json 对象
{“用户列表”:[ {"user1":[{"username":"mike","memberSince":"01/03/2011"}]}, {"user2":[{"username":"john","memberSince":"01/05/2011"}]}, ]}我有“user1”和“user2”标签的唯一原因是因为我在 jQuery 数据中通过 userId 存储用户列表,然后将其字符串化以将其放入 cookie 并发送到另一个页面。我知道,听起来很愚蠢,但我只是在构建一些前端的东西来证明一点,然后再用 db 正确地做到这一点。
所以
jQuery('div#userList').data('user1',user1JSON);变成
{"user1":[{"username":"mike","memberSince":"01/03/2011"}]}使用时
var userlist=JSON.stringify(jQuery('div#userList').data());因此,用户信息现在是 userId 的子项,而不仅仅是 userlist 的子项。
为了获取用户信息,我应该可以说
for(u=0;u但不幸的是,这只是给了我一个未定义的错误。如果我使用
var userInfo = userList[u]['user1'];我正确获取了用户信息。
那么,有人可以纠正我为什么 userList[u][0] 不起作用,或者
向我解释如何使用 JSON.stringify 而不将用户 ID 添加到字符串的开头?
【问题讨论】: