我对jQuery("#someID").html
有疑问。它只打印JSON中的最后一个键。
这是js:
<div class="row" id="fetchmember">
<script type="text/javascript">
jQuery('#group').change(function() {
var id_group = this.value;
var memberjson = "fetchmember.php?group="+id_group;
jQuery.getJSON(memberjson, function(data) {
jQuery.each(data, function(i, items) {
jQuery("#fetchmember").html("<li>"+items.name+"</li>");
});
});
});
</script>
</div>
来自所选选项之一的JSON结果:
[{"id":"1645819602","name":"Michael English","first_name":"Michael","last_name":"English"},
{"id":"100000251643877","name":"Bill Gaither","first_name":"Bill","last_name":"Gaither"}]
我想从json打印所有name
,但它只打印json的最后name
个键。我的代码出了什么问题?
任何建议和帮助将不胜感激。非常感谢你
答案 0 :(得分:3)
您正在删除每次迭代的内容。使用append
代替html
答案 1 :(得分:1)
而不是
jQuery("#fetchmember").html("<li>"+items.name+"</li>");
使用
jQuery("#fetchmember").append("<li>"+items.name+"</li>");
在迭代时,用最后一个覆盖内容。
答案 2 :(得分:0)
最好使用.append
代替.html
,但您必须先将该区域设为空:jQuery("#fetchmember").empty();