Как объяснено в комментариях, ваш ответ JSON не является массивом - здесь нет свойства length
, поэтому ваш цикл не зацикливается.Более того, вы, похоже, ожидаете массив с объектами, которые имеют атрибут name
.Это нигде не видно в полученном вами ответе.
Предполагая, что вы вызываете правильную службу JSON, единственная информация, которую вы можете перебрать, хранится в двух атрибутах: columns.columnIds
и summaryData.totals
.Таким образом, вы получите что-то , если закодируете это так:
console.log(response);
for (var i=0;i<response.columns.columnIds.length;++i) {
$('#main').append('<div class="name">'
+ response.columns.columnIds[i]
+ ': '
+ response.summaryData.totals[i] + '</div>');
}
Это предполагает, что эти значения являются примитивными значениями, что не ясно из полученного вами ответа.
Но опять же, это не будет выводить name
значения свойств, поскольку они не отображаются в вашем JSON, насколько это видно в вашем вопросе.