微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果等于变量,则删除节点子节点

如何解决如果等于变量,则删除节点子节点

如果 li 节点等于特定变量,我将尝试删除它。 例如

然后我想删除这个节点。我无法为节点设置 ID。这是设置子节点的代码

 $('#typing').append($('<li>').text(username + "is drawing..."));

这是我用来尝试删除特定节点的代码

if ($('<li>'.text == username + " is drawing...")){
           console.log("its the same!");
           $("<li>").remove();
           prev_username = "";
       }
    });

在这代码中,它打印出“相同”,因此它只是实际删除节点的操作。任何人都可以帮助我解决这个问题,我将不胜感激。 谢谢:)

解决方法

您的 if 语句将始终为 true,因为它正在测试一个 jQuery 对象,无论它如何构造都是真实的。

您可以使用像 contains 这样的选择器来查找您要查找的 li。

var username = 'Jefferey John Smith';

$('#typing').append($('<li>').text(username + " is drawing..."));

$('button').click(function(){
    $('li:contains('+ username + ' is drawing...)').remove();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id="typing">
    <li>Musa is typing...
</ul>
<button>Clear Jefferey John Smith</button>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。