用 jQuery 如何从 json 文件中选出特定关键字的键值对?

2015-12-07 02:29:23 +08:00
 theohateonion
太晚了脑子有点迷糊 问题描述不清楚见谅

我的 json 文件大概是{"title":xxx, "value":xxx, "title":xxx, "value":xxx ...}这种形式的 现在我要选出特定 title 内容的 json 文件 并进行 dom 操作 但是现在卡在选出上面了。写到现在脑子已经迷糊了。我知道这个问题可能比较愚蠢,当伸手党并不好。求各位的提供解决办法,直接给出解决办法或者提供相关的文档地址都感激不尽!(我去睡觉了明天起来回复大家 果然熬夜还是效率低)
4586 次点击
所在节点    jQuery
19 条回复
chemzqm
2015-12-07 04:10:55 +08:00
$.json = function(jsonStringj){ return JSON.parse(jsonString)}
$.json('{"title":xxx, "value":xxx, "title":xxx, "value":xx}')
hxsf
2015-12-07 07:50:29 +08:00
json 对象的话,直接 obj.title ,obj.value 不就好了?
julor
2015-12-07 08:07:33 +08:00
jQuery 害了一代人!标准的 json 难道还有比 js 更简单的语言?
sxd
2015-12-07 08:16:25 +08:00
1 楼太调皮
hxsf
2015-12-07 08:24:57 +08:00
@hxsf 刚刚没注意,话说楼主的 json 怎么会有一堆 title 和 value 。。。。
正常风格不是应该{"title1":value1, "title2":value2...}
或者[{"title":xxx, "value":xxx}, {"title":xxx, "value":xxx}...}]
说的不对还望见谅
yuriko
2015-12-07 08:42:21 +08:00
key 重复是什么情况,把生成这段 json 的人拖出来打一顿
JohnH
2015-12-07 08:43:00 +08:00
http://stackoverflow.com/questions/4992383/use-jquerys-find-on-json-object
use jQuery's find() on JSON object

传回这样的数据形式有点不对,应该像 @hxsf 写的那样
Hyperion
2015-12-07 08:46:04 +08:00
@julor 这并不是 jQuery 的锅, 估计只是没搞清楚逻辑而已.

@sxd 大清早活捉野生 sxd 一枚.
theohateonion
2015-12-07 09:02:36 +08:00
@hxsf - -果然还是不能熬夜写代码 对的 数据格式是你说的。 我描述错了。
theohateonion
2015-12-07 09:03:41 +08:00
@Hyperion 对哒 可能也是昨天弄了半天也没弄出来有点沮丧 今天再慢慢捋一捋~
Niphor
2015-12-07 10:12:10 +08:00
这种不是应该用 lodash 什么的么...
YuJianrong
2015-12-07 10:20:55 +08:00
这要什么 jQ 啊 orz ……
var map = arr.map(function(m, item){ m[item.title] = item.value; return m}, {});
你这样转出一个 map 不就随便怎么用了么……
powergx
2015-12-07 10:24:22 +08:00
这 tmd 是 json ,为什么 有两个 title
feikeq
2015-12-07 10:38:53 +08:00
@powergx 就是,这明显第二个 title 会覆盖第一个.
xieranmaya
2015-12-07 11:41:53 +08:00
你的 json 是数组吧,直接 map 或者 filter 不就好了吗,这关 jQuery 什么事。。。
FrankFang128
2015-12-07 12:28:01 +08:00
把输出者打一顿可以解决根本问题。
theohateonion
2015-12-07 14:55:35 +08:00
@powergx 是我自己描述错了 数据格式应该是如 @hxsf 所说
nino
2015-12-07 15:04:13 +08:00
filter 一下即可
TaMud
2015-12-07 21:26:25 +08:00
$("[title='TaMud 全是猪']")

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/241609

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX