Javascript 如果某个元素包含另一个指定元素,请删除该元素
我想使用Javascript删除其中包含的所有内容。有人能帮我吗Javascript 如果某个元素包含另一个指定元素,请删除该元素,javascript,jquery,html,Javascript,Jquery,Html,我想使用Javascript删除其中包含的所有内容。有人能帮我吗 <tr class="form-items"> <td> <!--- I WANT TO DELETE THIS --> <tr class="form-item-row"> <td class="fill-form"> <a class="delete_this_tr"/> </t
<tr class="form-items">
<td>
<!--- I WANT TO DELETE THIS -->
<tr class="form-item-row">
<td class="fill-form">
<a class="delete_this_tr"/>
</td>
</tr>
</td>
<!--- I DON'T WANT TO DELETE THIS -->
<td>
<tr class="form-item-row">
<td class="fill-form">
<a class="not_this_tr"/>
</td>
</tr>
</td>
</tr>
也可以使用“显示无”属性
这应该适合你正在寻找的东西
var elementToCheckFor = document.querySelector(".delete_this_tr");
var elementsToCheck = document.querySelectorAll(".form-item-row");
elementsToCheck.forEach(element => {
if(element.contains(elementToCheckFor)){
element.parentNode.removeChild(element);
}
});
您总是可以将其放入函数中,并在实际需要相应地删除节点时调用它
增加了一点小提琴来演示
您尝试过什么吗?Javascript在哪里?你试过什么?我试过基本的$。删除这个;我删除了带有此注释的元素,但我想删除包含$.delete_this_tr.closest.form item row.removeThis的元素。。干得好你是对的!真正的代码是这样的:无论如何,我想删除那些包含的,但不要删除那些包含的
$( ".form-items .form-item-row .fill-form a" ).each(function( index ) {
if($( this ).attr('class') === "delete_this_tr"){
$($(this).closest("tr").remove());
}
});
var elementToCheckFor = document.querySelector(".delete_this_tr");
var elementsToCheck = document.querySelectorAll(".form-item-row");
elementsToCheck.forEach(element => {
if(element.contains(elementToCheckFor)){
element.parentNode.removeChild(element);
}
});