如何为通过document.createAttribute(“ id”)创建的ID赋值

时间:2019-08-29 10:42:34

标签: javascript html

我正在尝试在div内放置带有文本的跨度。

我想使用范围的ID document.queryselectorall,但是我的范围的ID的名称中没有值“ spanMerge”。

 var para = document.createElement("div");
 var span = document.createElement("span");

 var spanAttr = document.createAttribute("id");
 spanAttr.innerHtml = "spanMerge";
 span.setAttributeNode(spanAttr);


 var tempList = document.querySelectorAll('#spanMerge');

 var textNode = document.createTextNode(e);
        span.appendChild(textNode);


 para.appendChild(span);

1 个答案:

答案 0 :(得分:1)

属性没有innerHTML属性,这没有任何意义。只有元素具有那个。有关如何正确使用属性节点的信息,请参见https://developer.mozilla.org/en-US/docs/Web/API/Document/createAttribute

尽管使用element.setAttribute会更简单:

var para = document.createElement("div");
var span = document.createElement("span");
span.setAttribute("id", "spanMerge");

var textNode = document.createTextNode("e");
span.appendChild(textNode);
para.appendChild(span);

document.body.appendChild(para);
console.log(document.body.innerHTML);