猿问

怎么对Json对象进行遍历呢?

我有一个json对象,我想让他的value遍历输出到我li上,该怎么做呢?

<li class="list-group-item"><span class="badge">14</span>13</li>
<li class="list-group-item"><span class="badge">14</span>温度:</li>
<li class="list-group-item"><span class="badge">14</span>天气:</li><li class="list-group-item">
<span class="badge">14</span>星期:</li><li class="list-group-item"><span class="badge">14</span>风力:</li>
<li class="list-group-item"><span class="badge">14</span>风力:</li>

因为json对象的key是英文的,我不想输出英文,所以我就先把key写在这里了。之后我就想在span标签里输出value,但是我想到使用for in 的 我得获得span对象,

 $('#shishi').find('span').each(function () {
        $(this).html("!")
    })

在for in 里面使用的话,每遍历一次就会给每个span都给赋值。不是我想要的。。
那我应该怎么做呢?


ABOUTYOU
浏览 856回答 1
1回答

倚天杖

首先, 既然你的class='list-group-item';则表示他们就是被遍历出来的. Ps: 不是遍历出来的就不叫list了.json:{name1:&nbsp;"1",name2:&nbsp;"2",name3:&nbsp;"3",name4:&nbsp;"4"}js:var&nbsp;objName&nbsp;=&nbsp;{name1:&nbsp;名称1,&nbsp;name2:&nbsp;名称2,&nbsp;name3:&nbsp;名称3,&nbsp;name4:&nbsp;名称4}; var&nbsp;_html&nbsp;=&nbsp;"";for(var&nbsp;i&nbsp;in&nbsp;json){ &nbsp;&nbsp;&nbsp;&nbsp;_html&nbsp;+=&nbsp;'<li&nbsp;class="list-group-item"><span&nbsp;class="badge">'&nbsp;+&nbsp;json[i]&nbsp;+&nbsp;'</span>'&nbsp;+&nbsp;objName[i]&nbsp;+&nbsp;':</li>'; } $("外层元素").append(_html);如果返回的是数组形式的数据:json:[{name:&nbsp;"name1",&nbsp;value:&nbsp;"1"}, {name:&nbsp;"name2",&nbsp;value:&nbsp;"2"}, {name:&nbsp;"name3",&nbsp;value:&nbsp;"3"}, {name:&nbsp;"name4",&nbsp;value:&nbsp;"4"},]js:var&nbsp;objName&nbsp;=&nbsp;{name1:&nbsp;名称1,&nbsp;name2:&nbsp;名称2,&nbsp;name3:&nbsp;名称3,&nbsp;name4:&nbsp;名称4}; var&nbsp;_html&nbsp;=&nbsp;"";for(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;json.length;i++&nbsp;){ &nbsp;&nbsp;&nbsp;&nbsp;_html&nbsp;+=&nbsp;'<li&nbsp;class="list-group-item"><span&nbsp;class="badge">'&nbsp;+&nbsp;json[i].value&nbsp;+&nbsp;'</span>'&nbsp;+&nbsp;objName[json[i].name]&nbsp;+&nbsp;':</li>'; } $("外层元素").append(_html);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答