首页 > 解决方案 > 为什么将 I 设置为响应长度?

问题描述

我正在尝试从 ajax json 响应创建一个表,但我的 for 循环立即将 i 设置为最大值。

$.ajax(settings).done(function (response) {
  console.log(response);
  var i = "";
  td = document.createElement('td');
  tr = document.createElement('tr');
  tableContent = document.getElementById('analysisTable');
  for (i = 0; i < response.segments.length; ++i) {
    td.innerHTML = response.segments[i].confidence;
    $(td).attr({
      'id': i,
      'class': "analysis",
    });
    tableContent.appendChild(tr).appendChild(td);
  }
});

标签: javascriptjqueryhtmljsonajax

解决方案


您正在循环外创建 tr 和 td 元素。重新设置 innerHtml 不会创建新元素。


推荐阅读