我正在使用clone从如下所述的按钮单击事件向DOM表中动态添加新行。但我想将克隆的节点附加到DOM表中的特定行位置。我知道我可以通过使用“insertrow”选项来做到这一点,但我想通过克隆使用它。

    var newNode = tblBody.rows[1].cloneNode(true);
    tblBody.appendChild(newNode);

有什么方法可以在我动态选择的位置而不是在最后一行附加或添加“newNode”。

最佳答案

使用.insertBefore()中的tblBody,并将newNode作为第一个参数传递,并将tblBody的子节点传递给该节点,然后将节点插入作为第二个参数。

    // put this node----v  before this----v
tblBody.insertBefore(newNode, tblBody.rows[i]);

如果tblBody.rows[i]nullundefined,则.insertBefore()的行为类似于.appendChild(),并将其放在最后。

09-15 18:42