我的json是
[{"dir":"down","sym":"oo","b":"1.35553","a":"1.35556"},
{"dir":"down","sym":"pp","b":"1.64442","a":"1.64451"},
{"dir":"down","sym":"qq","b":"104.603","a":"104.609"},
{"dir":"up","sym":"rr","b":"0.88186","a":"0.88191"},
{"dir":"up","sym":"ss","b":"1.09667","a":"1.09672"}]
使用这个jQuery
<script type="text/javascript">
$(document).ready(function() {
setInterval(function() {
$.ajax({
cache: false,
url: 'quotes1.php',
dataType: 'json',
success: function(json){
for(var i=0;i<json.length;i++){
$('#divToRefresh').html(json[i].dir + '/' + json[i].sym+ '/' + json[i].b+ '/' + json[i].a);
}
}
});
}, 1000);
});
</script>
但是它只显示第一个数据
up / oo / 1.35553 / 1.35556
如何显示所有数据?
最佳答案
为此使用jQuery $.each()
和append()
方法
success: function(json){
$.each(json,function(i,val){
$('#divToRefresh').append(val.dir + '/' + val.sym+ '/' + val.b+ '/' + val.a);
});
}
html()
将替换现有数据,因此它仅显示最后一个值,而append()
将帮助连接数据。$.each
优于for
循环。关于javascript - Json使用for循环显示所有数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21252173/