首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在JavaScript中创建动态表的几个误区

在JavaScript中创建动态表的几个误区
EN

Stack Overflow用户
提问于 2014-11-04 13:52:12
回答 4查看 66关注 0票数 1

我尝试使用JavaScript创建动态表,该表包含两个列--名字和姓氏。

以下是JavaScropt代码:

代码语言:javascript
运行
复制
function CreatTable() {

    var tablearea = document.getElementById('ShowDataID');
    var table = document.createElement('table');
    var thead = document.createElement("thead");
    var tr = document.createElement('tr');
    var th = document.createElement('th');

    var firstNameTxt = document.createTextNode("First Name");
    th.appendChild(firstNameTxt);
    tr.appendChild(th);
    thead.appendChild(tr);
    table.appendChild(thead);

    var familyNameTxt = document.createTextNode("Family Name");
    th.appendChild(familyNameTxt);
    tr.appendChild(th);
    thead.appendChild(tr);
    table.appendChild(thead);

    for (var i = 1; i < 4; i++) {
        var tr = document.createElement('tr');
        tr.appendChild(document.createElement('td'));
        tr.appendChild(document.createElement('td'));
        tr.cells[0].appendChild(document.createTextNode('John'))
        tr.cells[1].appendChild(document.createTextNode('McDowell'))
        table.appendChild(tr);
    }


    tablearea.appendChild(table);
}

我得到的结果是:

我的问题是,为什么我要得到"McDowell“而不是姓column.Why呢?我错过了什么?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-11-04 13:57:44

第二次尝试创建一个新的th,不要使用已经使用的

代码语言:javascript
运行
复制
function CreatTable() {

    var tablearea = document.getElementById('ShowDataID');
    var table = document.createElement('table');
    var thead = document.createElement("thead");
    var tr = document.createElement('tr');
    var th = document.createElement('th');

    var firstNameTxt = document.createTextNode("First Name");
    th.appendChild(firstNameTxt);
    tr.appendChild(th);
    thead.appendChild(tr);
    table.appendChild(thead);

    //********* Look here *****************
    var familyNameTxt = document.createTextNode("Family Name");
    th = document.createElement('th'); //*** Create a new th here. Dont use the old one
    //********* Look here *****************

    th.appendChild(familyNameTxt);
    tr.appendChild(th);
    thead.appendChild(tr);
    table.appendChild(thead);

    for (var i = 1; i < 4; i++) {
        var tr = document.createElement('tr');
        tr.appendChild(document.createElement('td'));
        tr.appendChild(document.createElement('td'));
        tr.cells[0].appendChild(document.createTextNode('John'))
        tr.cells[1].appendChild(document.createTextNode('McDowell'))
        table.appendChild(tr);
    }


    tablearea.appendChild(table);
}

演示

票数 1
EN

Stack Overflow用户

发布于 2014-11-04 13:57:53

解决方案

代码语言:javascript
运行
复制
function CreatTable() {

  var tablearea = document.getElementById('ShowDataID');
  var table = document.createElement('table');
  var thead = document.createElement('thead');
  var tr = document.createElement('tr');
  var th = document.createElement('th');

  var firstNameTxt = document.createTextNode("First Name");
  th.appendChild(firstNameTxt);
  tr.appendChild(th);
thead.appendChild(tr);
  table.appendChild(thead);

  var familyNameTxt = document.createTextNode("Family Name");
  th = document.createElement('th');
  th.appendChild(familyNameTxt);
  tr.appendChild(th);
  thead.appendChild(tr);
  table.appendChild(thead);

  for (var i = 1; i < 4; i++) {
    tr = document.createElement('tr');
    tr.appendChild(document.createElement('td'));
    tr.appendChild(document.createElement('td'));
    tr.cells[0].appendChild(document.createTextNode('John'));
    tr.cells[1].appendChild(document.createTextNode('McDowell'));
    table.appendChild(tr);
  }


  tablearea.appendChild(table);
}
CreatTable();
票数 1
EN

Stack Overflow用户

发布于 2014-11-04 13:58:30

你想念创造新的

代码语言:javascript
运行
复制
var familyNameTxt = document.createTextNode("Family Name");
th = document.createElement('th'); // this line missed
th.appendChild(familyNameTxt);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26736845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档