Javascript 找不到元素
所以我想写出输入值项中的文本,并在文本右侧创建另一个节点。但是这个文本只是在输入文本旁边显示[object HTMLParagraphElement],为什么不显示文本呢 我不知道我做错了什么,请帮帮我 所以输入的文本被显示出来了,而不是我制作的另一个p元素 代码如下:Javascript 找不到元素,javascript,html,Javascript,Html,所以我想写出输入值项中的文本,并在文本右侧创建另一个节点。但是这个文本只是在输入文本旁边显示[object HTMLParagraphElement],为什么不显示文本呢 我不知道我做错了什么,请帮帮我 所以输入的文本被显示出来了,而不是我制作的另一个p元素 代码如下: var lista = document.getElementById("lista"); var li = document.createElement("li"); var del = document.creat
var lista = document.getElementById("lista");
var li = document.createElement("li");
var del = document.createElement("p");
var delt = document.createTextNode("remove this");
del.appendChild(delt);
var item = document.getElementById("item");
var text = document.createTextNode(item.value + " | " + del);
li.appendChild(text);
lista.appendChild(li);
您不需要创建文本节点来追加文本。只需在正在创建的元素上设置innerHTML:
var myPar = document.createElement('p');
myPar.innerHTML = "remove this";
li.innerHTML = myPar.outerHTML; //this would be the tag and its text <p>remove this</p>
// other code here.
var myPar=document.createElement('p');
myPar.innerHTML=“删除此项”;
li.innerHTML=myPar.outerHTML//这将是标记及其文本删除此
//这里还有其他代码。
演示问题出在线路上
var text = document.createTextNode(item.value + " | " + del);
此时,“del”引用了段落元素,
您可以使用“del.innerHtml”而不是“del”将代码更改为使用del.innerHtml
var text = document.createTextNode(item.value + " | " + del.innerHTML);
document.createTextNode的参数必须是字符串。innerHTML是元素对象的html代码。
HTML:
Js:
//示例!
var lista=document.getElementById(“lista”);
var item=document.getElementById(“item”);
for(var i=0;i请同时显示html代码。
<ul id="lista"></ul>
// EXAMPLE!
var lista = document.getElementById("lista");
var item = document.getElementById("item");
for(var i=0;i<100;i++){
var li = document.createElement("li");
var del = document.createElement("p");
del.innerHTML = 'Remove this';
li.appendChild( del );
lista.appendChild(li);
}