У меня проблема с 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"}]
Я хочу напечатать все name
из JSON, но печатать только последнее name
ключа JSON. Что случилось с моим кодом?
Любые советы и помощь будут очень признательны. большое спасибо
Вы удаляете содержимое на каждой итерации. Используйте append
вместо html
Вместо
jQuery("#fetchmember").html("<li>"+items.name+"</li>");
использование
jQuery("#fetchmember").append("<li>"+items.name+"</li>");
На итерации вы перезаписываете контент последним.
Лучше использовать .append
вместо .html
, но вы должны сделать область пустой до: jQuery("#fetchmember").empty();