删除DOM节点会引发异常Node,removeChild必须是Node的实例

问题描述 投票:0回答:1

我正在尝试删除html元素:

function welcomeBack(user){

  var  loginDiv = document.getElementById("logindiv");
  var login = document.getElementById("loginAnchor");
  loginDiv.removeChild(login);
}

父元素和子元素:

<div id="logindiv">
                <li><a href="#" onclick="login()" id="loginAnchor">Sign In</a></li>
    </div>

但是我遇到以下错误:

TypeError:Node.removeChild的参数1('child')必须是节点的实例

我已经搜索过类似的问题,但似乎找不到解决方案或解释。

感谢任何输入。

javascript dom removechild
1个回答
1
投票

您需要在删除parentNode之前参考childNode所在的位置。

尝试一下:

function welcomeBack(user) {

  var loginDiv = document.getElementById("logindiv");
  var login = document.getElementById("loginAnchor");
  var loginDiv = login.parentNode; 
  loginDiv.removeChild(login);

}
© www.soinside.com 2019 - 2024. All rights reserved.