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

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(“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 &quot;Delete&quot; 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 &quot;Delete&quot; 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 &quot;Delete&quot; 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 &quot;Delete&quot; 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”)var a=document.getElementById(“newPoints”)退出函数,但问题仍然存在。您没有使用。append@ArijitMukherjee没关系,我还有
    。这就是我想说的
    var a=document.getElementById(“newPoints”)var a=document.getElementById(“newPoints”)超出函数范围,但问题仍然存在。更好的是,现在没有实际创建文本区域。。。(基于提琴)更好的是,现在实际上没有创建文本区域。。。(根据小提琴)代码几乎正确,我对其进行了编辑,这样就不会出现双
    li
    s代码几乎正确,我对其进行了编辑,这样就不会出现双
    li
    s