为了账号安全,请及时绑定邮箱和手机立即绑定

关于td元素的添加

var t = document.getElementById("table");

var x = document.createElement("tr"); 

var y = document.createElement("td"); 

x.appendChild(y);

x.appendChild(y);

x.appendChild(y);

t.appendChild(x);

为什么我这么写只添加了一个td元素上去  而不是添加了三个   换成 创建y  x  z 三个td元素依次添加才可以  为什么 

正在回答

3 回答

  var otest2 = document.getElementById("test2"); 
  var tr1 = document.createElement("tr");
  var th1 = document.createElement("th");  
  var th2 = document.createElement("th");
  
  var tr2 = document.createElement("tr");
  var td1 = document.createElement("td");  
  var td2 = document.createElement("td");
  
  otest2.appendChild(tr1);
  th1.innerHTML = "th1";
  th2.innerHTML = "th2";
  tr1.appendChild(th1);
  tr1.appendChild(th2);
  
  otest2.appendChild(tr2);
  td1.innerHTML = "td1";
  td2.innerHTML = "td2";
  tr2.appendChild(td1);
  tr2.appendChild(td2);

你试试这段代码,就明白了~

0 回复 有任何疑惑可以回复我~
#1

慕用6930380 提问者

我知道命名不一样分开添加就好了 我就是想问问为什么我一开始这么写不行 先谢谢你啦
2016-07-01 回复 有任何疑惑可以回复我~
#2

5E 回复 慕用6930380 提问者

命名相同就取代了原来的啊,所以添加不了两个
2016-07-04 回复 有任何疑惑可以回复我~
var t = document.getElementById("table");
var x = document.createElement("tr"); 
var y = document.createElement("td"); 
x.appendChild(y);
x.appendChild(y);
x.appendChild(y);
t.appendChild(x);

命名是可以一样的,但是你只create了一个新节点啊,你后面x挂三次都是挂的这创建的一个节点,当然最后只添了一个td啦。改成如下这样就可以了

var t = document.getElementById("table");
var x = document.createElement("tr"); 
var y = document.createElement("td"); 
x.appendChild(y);
y = document.createElement("td"); 
x.appendChild(y);
y = document.createElement("td"); 
x.appendChild(y);

t.appendChild(x);


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468044    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

关于td元素的添加

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信