Javascript 删除没有id标记的div

Javascript 删除没有id标记的div,javascript,dom,Javascript,Dom,我需要一个解决方案来删除一个没有ID标签的div。div看起来像这样 这是完整的结构 <tr id="-1"> <td class="stxt"> <div align="center"> </div> </td> </tr> 您需要某种方法使此div标记唯一。还有另一个名为getElementsByTagName的javascipt函数,您可以使用它来获取所有div标记的数组。然后,您可以使用D

我需要一个解决方案来删除一个没有ID标签的div。div看起来像这样

这是完整的结构

<tr id="-1">
  <td class="stxt">
    <div align="center">
    </div>
  </td>
</tr>


您需要某种方法使此div标记唯一。还有另一个名为
getElementsByTagName
的javascipt函数,您可以使用它来获取所有div标记的数组。然后,您可以使用DOM检查该div标记是否具有
align=“center”
属性。您需要了解如何获取对它的引用,完成此操作后,可以使用以下方法删除它:

div.parentNode.removeChild(div);
当然,align属性已被弃用,但无论如何,您可以使用以下方法找到带有
align=“center”
的div:

var divs = document.getElementsByTagName('div');
var div;
var i = divs.length;

while (i--) {
  div = divs[i];

  if (div.getAttribute('align') == 'center') {
    div.parentNode.removeChild(div);
  }
}
这将删除文档中包含
align=“center”
的每个div

请注意,
getElementsByTagName
返回的对象是一个。如果从0对其进行迭代并删除节点,它们将从活动列表中删除,因此您将跳过删除节点后的节点,并尝试在最后访问不存在的节点。向后看清单可以避免这些陷阱。另一种方法是将节点列表转换为数组,但这有点低效

编辑 因为你编辑了这个问题,这里有一个更新的答案

您可以使用getElementById获取对TR的引用:

现在您可以进入DOM:

var cell = root.cells[0]; // First cell in the row
var div = cell.getElementsByTagName('div')[0]; // first div
cell.removeChild(div);

特定于您发布的结构。

如果您可以删除内容,则可以使用:

var all = document.getElementsByTagName("div");
for(i=0; i < all.length; i++) {
    all[i].innerHTML = ""
}
var all=document.getElementsByTagName(“div”);
对于(i=0;i

请参见

是否有其他信息可供参考?它是否有id为的父级?我更新了树结构。希望现在更容易执行任务?行var root=document.getElementById('tr');应该是var root=document.getElementById('-1');我试过你的密码,但我运气不好。也许你可以看看我的页面,看看我的结构是否正确。我想删除这个文本图片->url是@sarsar-根据,id属性必须以字母开头,但是浏览器可能允许其他字符。发布的代码将起作用(使用Pradeep建议的编辑)。但是,所讨论的表位于iframe元素中,因此必须首先在iframe中获取对文档的引用,然后在此基础上运行该函数。
var all = document.getElementsByTagName("div");
for(i=0; i < all.length; i++) {
    all[i].innerHTML = ""
}