【问题标题】:failed to execute appendchild on node无法在节点上执行 appendchild
【发布时间】:2016-06-11 11:46:36
【问题描述】:

我正在尝试在我的表中创建一个新的 tr

js:

function addElement() {

    var message = document.getElementById('inputsend');
    var now = new Date();

    var table = document.getElementById('messagebox');

    var tr = document.createElement('tr');

    var tdTime = document.createElement('td');
    tdTime.innerHTML = now.getHours() +":"+now.getMinutes() + " ";

    var tdName = document.createElement('td');
    tdName = userName + " ";

    var tdMessage = document.createElement('td');
    tdMessage = message;

    tr.appendChild(tdTime);
    tr.appendChild(tdName);
    tr.appendChild(tdMessage);

    table.appendChild(tr);

    document.getElementById('inputsend').value = "";

}

html:

<table id="messagebox">
</table>

但它不起作用,chrome 说在节点上执行 appendchild 失败

【问题讨论】:

  • 固定 tdName.innerHTML = userName + " "; var tdMessage.innerHTML = document.createElement('td'); tdMessage.innerHTML = message.value;
  • 我在发布答案后才注意到您的评论。您应该将其作为答案发布并接受它作为解决方案,因此人们不会打开此帖子试图解决它。

标签: javascript html


【解决方案1】:

tdNametdMessage 中缺少 .innerHTML,因此您将一个字符串传递给它无法处理的 appendChild

var tdName = document.createElement('td');
tdName.innerHTML = userName + " ";

var tdMessage = document.createElement('td');
tdMessage.innerHTML = message;

【讨论】:

    猜你喜欢
    • 2020-09-05
    • 1970-01-01
    • 2015-01-20
    • 1970-01-01
    • 2021-11-29
    • 2017-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多