我appendChild(表单输入)所以如何删除上一个的新输入?

时间:2012-04-11 05:36:05

标签: javascript

我已经在onClick上添加了新的上传和描述输入功能。我如何创建一个函数来从底部到顶部删除创建的元素?

var i = 1;

function add()
{
    var element = document.createElement('input')
    var element1 = document.createElement('input')
    var space = document.createElement('br')
    var des = document.createElement('span')

    var td = document.getElementById('upload')

    des.innerHTML = "Description: "
    element.setAttribute("type", "text")
    element.setAttribute("name", "desciption"+ i)
    element.setAttribute("value", " ")
    element1.setAttribute("type", "file")
    element1.setAttribute("name", "uploadFile"+ i)
    element1.setAttribute("id", "uploadFile"+ i)

    td.appendChild(des)
    td.appendChild(element)
    td.appendChild(element1)
    td.appendChild(space)

}

1 个答案:

答案 0 :(得分:2)

在您的代码中:

> element.setAttribute("type", "text") 

直接设置标准属性的值更可靠:

 element.type = "text";

无论如何,你可以使用以下方法删除元素:

   td.removeChild(space);      
   td.removeChild(element1);
   td.removeChild(element);
   td.removeChild(des);

或者你可以这样做:

  var nodes = td.childNodes;
  var i = nodes.length;
  while (i--) {
    td.removeChild(nodes[i]);
  }

或更简单:

  td.innerHTML = '';