表格数据未从我的JavaScript代码插入到我的表格中

时间:2019-02-11 07:05:48

标签: javascript

我对JavaScript非常陌生。我正在尝试使用Javascript将someObject数据插入到我的表中。但不幸的是,我的代码无法正常工作。我不清楚我要去哪里错了。请在下面找到我的代码。任何帮助都会对我有真正的帮助。

  function myFunction(){
  var data = '{ "name":"John", "age":30, "city":"New York"}'
  var obj = JSON.parse(data);
  var toSHow = document.getElementById("datum");//my table ID is datum
var empData = "";
  for(var i=0; i<obj.length; i++)
    empData += '<tr>';
    empData += '<td>'+data.name+'</td>';
    empData += '<td>'+data.age+'</td>';
    empData += '<td>'+data.city+'</td>';
    empData += '</tr>';
  }

}
toSHow.append(empData);
</script>


3 个答案:

答案 0 :(得分:1)

我想您可能不得不使用obj.name,obj.age和obj.city而不是data.name,age和city

答案 1 :(得分:1)

我对您的代码进行了一些调整并对其进行了评论:

function myFunction(){
    var data = '[{"name":"John", "age":30, "city":"New York"}, {"name":"Doe", "age":25, "city":"LA"}]' // Converted to array and added second element for example
    var obj = JSON.parse(data);
    var toSHow = document.getElementById("datum");//my table ID is datum

    for(var i=0; i < obj.length; i++) {
        // Reset empData every loop
        var empData = "";

        // Create new element to attach instead of adding plain text
        var newTr = document.createElement('tr');

        // Get data from object by index
        empData += '<td>'+obj[i].name+'</td>';
        empData += '<td>'+obj[i].age+'</td>';
        empData += '<td>'+obj[i].city+'</td>';

        // Set table data
        newTr.innerHTML = empData;

        // Append row every loop
        toSHow.append(newTr);

    }
}

答案 2 :(得分:0)

变量empDatamyFunction中定义,在变量外部未定义。