javascript-创建新的<;李>;元素的文本区域单击按钮
HTML: 和Javascript:javascript-创建新的<;李>;元素的文本区域单击按钮,javascript,Javascript,HTML: 和Javascript: textarea { font-family: Georgia, 'Times New Roman', Times, serif; vertical-align: text-top; width: 300px; height: 60px; resize: vertical; padding: 10px; } 函数newPoint(){ var a=document.getElementById(“newPoi
textarea {
font-family: Georgia, 'Times New Roman', Times, serif;
vertical-align: text-top;
width: 300px;
height: 60px;
resize: vertical;
padding: 10px;
}
函数newPoint(){
var a=document.getElementById(“newPoints”);
a、 innerHTML+='
';
}
为了更好地形象化,这里有一个例子
因此,基本上,对于上面的代码,我试图使其在用户单击按钮时,将创建一个新的(后面带有
)包含
。当用户在选择文本区域的同时按下键盘上的删除按钮时,此新的、和以下
将被删除
问题是,当用户创建一个新的并在其文本区域中键入一些文本,然后创建另一个时,上一个的文本区域中的文本将消失
如何修复此问题?使用CreateElement
和appendChild
添加元素。我认为,当您附加到innerHTML时,它会覆盖newPoints
中的所有内容
function newPoint() {
var a = document.getElementById("newPoints");
a.innerHTML += '<li><textarea placeholder="To delete this point, select this textbox and press the "Delete" button on your keyboard." onkeydown="if(event.keyCode == 46) { this.parentNode.nextSibling.parentNode.removeChild(this.parentNode.nextSibling); this.parentNode.parentNode.removeChild(this.parentNode); }"></textarea></li><br>';
}
函数newPoint(){
var a=document.getElementById(“newPoints”);
var l=document.createElement(“li”);
l、 innerHTML='';
var b=document.createElement(“br”);
a、 儿童(l);
a、 儿童(b);
}
使用CreateElement
和appendChild
添加元素。我认为,当您附加到innerHTML时,它会覆盖newPoints
中的所有内容
function newPoint() {
var a = document.getElementById("newPoints");
a.innerHTML += '<li><textarea placeholder="To delete this point, select this textbox and press the "Delete" button on your keyboard." onkeydown="if(event.keyCode == 46) { this.parentNode.nextSibling.parentNode.removeChild(this.parentNode.nextSibling); this.parentNode.parentNode.removeChild(this.parentNode); }"></textarea></li><br>';
}
函数newPoint(){
var a=document.getElementById(“newPoints”);
var l=document.createElement(“li”);
l、 innerHTML='';
var b=document.createElement(“br”);
a、 儿童(l);
a、 儿童(b);
}
这可能会有帮助:
function newPoint() {
var a = document.getElementById("newPoints");
var l = document.createElement("li");
l.innerHTML = '<textarea placeholder="To delete this point, select this textbox and press the "Delete" button on your keyboard." onkeydown="if(event.keyCode == 46) { this.parentNode.nextSibling.parentNode.removeChild(this.parentNode.nextSibling); this.parentNode.parentNode.removeChild(this.parentNode); }"></textarea>';
var b = document.createElement("br");
a.appendChild(l);
a.appendChild(b);
}
函数newPoint(){
var a=document.getElementById(“newPoints”);
var newcontent=document.createElement('li');
newcontent.innerHTML=“”;
a、 appendChild(newcontent);
}
这可能会有帮助:
function newPoint() {
var a = document.getElementById("newPoints");
var l = document.createElement("li");
l.innerHTML = '<textarea placeholder="To delete this point, select this textbox and press the "Delete" button on your keyboard." onkeydown="if(event.keyCode == 46) { this.parentNode.nextSibling.parentNode.removeChild(this.parentNode.nextSibling); this.parentNode.parentNode.removeChild(this.parentNode); }"></textarea>';
var b = document.createElement("br");
a.appendChild(l);
a.appendChild(b);
}
函数newPoint(){
var a=document.getElementById(“newPoints”);
var newcontent=document.createElement('li');
newcontent.innerHTML=“”;
a、 appendChild(newcontent);
}
您没有使用。append@ArijitMukherjee没关系,我还有
。这就是我想说的var a=document.getElementById(“newPoints”)每次我猜id不是新的,它总是same@ArijitMukherjee那么你的观点是什么。。。?我尝试使用这一行var a=document.getElementById(“newPoints”)代码>退出函数,但问题仍然存在。您没有使用。append@ArijitMukherjee没关系,我还有
。这就是我想说的var a=document.getElementById(“newPoints”)每次我猜id不是新的,它总是same@ArijitMukherjee那么你的观点是什么。。。?我尝试使用这一行var a=document.getElementById(“newPoints”)代码>超出函数范围,但问题仍然存在。更好的是,现在没有实际创建文本区域。。。(基于提琴)更好的是,现在实际上没有创建文本区域。。。(根据小提琴)代码几乎正确,我对其进行了编辑,这样就不会出现双li
s代码几乎正确,我对其进行了编辑,这样就不会出现双li
s