在Web前端设计过程中,用js删除元素对象经常会用到。例如某一个页面在加载完成时显示一条新闻,这条新闻只显示一次且仅显示一小段时间,则显示完后就需要把它删除或隐藏。

  在 javascript 中,删除元素其实是移除元素,用 removeChild() 方法,元素不能自己删除自己,所以只能用其父元素将其删除,所以用移除孩子的方法。无论用js删除页面级元素div,还是删除列表级元素 ulli、ulol,以及删除图片元素img、文本框元素input,都用 removeChild() 方法。

 

  一、js删除div及其内容

  假如有 div 如下:

  <div><div id="delId"><h3>js删除元素之div及其内容</h3><p>这是段落内容</p></div></div>

  var obj = document.getElementById("delId");
  obj.innerHTML = "";//删除div内容

  //删除div
  var parentObj = obj.parentNode;//获取div的父对象
  parentObj.removeChild(obj);//通过div的父对象把它删除

 

  二、js删除ulli及其内容

  假如有 ulli 如下:

  <div><ul id="ulId"><li>js删除元素之ulli及其内容</li><li>olli也是一样的删除方法</li><ul></div>

  var obj = document.getElementById("ulId");
  obj.innerHTML = "";//删除ul的内容(删除所有li)

  //删除所有li的内容
  var obj = document.getElementById("ulId");
  var liObj = obj.childNodes;//li都是ul的孩子,所以通过 childNodes 获取所有li
  for (var i = 0; i < liObj.length; i++) {
    liObj[i].innerHTML = "";//循环删除所有li的内容
  }

  //删除ul
  var parentObj = obj.parentNode;//获取ul的父对象
  parentObj.removeChild(obj);//通过li的父对象把它删除

 

  三、js删除img元素

  假如有 img 如下:

  <div><img id="imgId" src="/images/del.jpg" alt="js删除img元素" /></div>

  var obj = document.getElementById("imgId");
  var impParent = obj.parentNode;//获取img的父对象
  impParent.removeChild(obj);//通过img的父对象把它删除

 

  四、js删除input元素

  假如有 img 如下:

  <span><input id="inputId" type="text" /></span>

  var obj = document.getElementById("inputId");
  var inputParent = obj.parentNode;//获取input的父对象
  inpuParent.removeChild(obj);//通过inpu的父对象把它删除

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐