Javascript 从DOM中删除HTML

Javascript 从DOM中删除HTML,javascript,google-tag-manager,Javascript,Google Tag Manager,我必须使用Google Tag Manager进行更改,以临时修复某些内容,直到我能够访问网站的后端。我正在尝试删除基于类的div容器。我已经能够使用以下代码成功创建自定义HTML标记,以添加或删除div容器,如下所示: <script> function changeHtml () { document.getElementsByClassName("signup")[0].style.display = "none"; } cha

我必须使用Google Tag Manager进行更改,以临时修复某些内容,直到我能够访问网站的后端。我正在尝试删除基于类的div容器。我已经能够使用以下代码成功创建自定义HTML标记,以添加或删除div容器,如下所示:

<script> 
function changeHtml () 
{ 
document.getElementsByClassName("signup")[0].style.display = "none"; 
} 
change = changeHtml(); 
</script>

函数changeHtml()
{ 
document.getElementsByClassName(“注册”)[0].style.display=“无”;
} 
change=changeHtml();
问题是这个div容器中有问题的项是一个表单。我很快发现,如果你申请显示:无;通过css,表单仍然有效。删除它的真正方法是将其从DOM中删除。我尝试添加以下JS,但没有成功:

<script>
const elem = document.getElementsByClassName('signup');
elem.parentNode.removeChild(elem);
</script>

const elem=document.getElementsByClassName('signup');
elem.parentNode.removeChild(elem);
接收错误:


Javascript编译器错误:第3行错误,字符1:此语言功能仅在更好:常量声明的ECMAScript 6模式下受支持

<script>
  const elem = document.getElementsByClassName('signup')[0];
  elem.outerHTML = '';
</script>

const elem=document.getElementsByClassName('signup')[0];
elem.outerHTML='';
使用
remove()
方法从DOM中删除所选元素:

<script>
  document.getElementsByClassName('signup')[0].remove();
</script>

document.getElementsByClassName('signup')[0].remove();

目前,GTM仅在自定义模板中支持ES6,因此在自定义javascript标记中使用
const
将导致错误。您的描述有点泛化(“不起作用”),因此我们将假定这是您的问题。此外,必须仅在要删除的元素实际存在后(在DOM就绪或具有可见性触发器的情况下)执行标记。

const elem=document.getElementsByClassName('signup')[0]这是否回答了您的问题?为此,我尝试了这个选项,并得到了一个Javascript编译器错误:第3行的错误,字符1:这个语言功能只支持更好的ECMASCRIPT6模式:const声明查看我的答案。ES6和const关键字目前不受支持。感谢您的帮助!我所说的“没有成功”的意思是,它没有移除对象。我将编辑带有错误的初始问题(因为我得到了一个JS编译器错误)。我忘了加上那个(我的道歉!)。