javascript - 如何从尚未添加到 DOM 的 JQuery 对象中删除特定元素?

标签 javascript jquery html

如果我有一个 JQuery 对象,其中包含 DOM 中已有的元素,则删除函数将正确地将它们从中删除。

但是,我想删除尚未添加到 DOM、仅存在于 JQuery 对象中的特定元素,如下所示:

var $div = $("<div><span class='sample'></span></div>");
$div.remove(".sample");
console.log($div.html()); // prints out the original HTML, inner span is not removed

最佳答案

如果您将选择器传递给 remove(),那么选择器将应用于您的案例 $div 中不包含 的元素传递集>sample 元素,它是 $div 引用的元素的后代。所以你需要使用 .find() 来查找元素并将其删除

var $div = $("<div><span class='sample'></span>some content</div>");
$div.find(".sample").remove();
$('#result').text($div.html());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="result"></div>

关于javascript - 如何从尚未添加到 DOM 的 JQuery 对象中删除特定元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25911632/

相关文章:

javascript - 表单提交 - IE 访问被拒绝 - 同一域

javascript - jquery height() 方法返回行高

css - 如何根据特定尺寸调整视频?

javascript - Angularjs 模型更新延迟

javascript - 表格和 div 的故障(位置 : absolute) in Firefox

jquery - 有没有办法关闭 WordPress 中的 jQuery noConflict 模式?

javascript - 使用javascript更改一组元素的宽度

html - 一些段落代码会影响我的网站定位吗?

javascript - RTCPeerConnection 如何使用 STUN/TURN 服务器阵列?

javascript - 渲染组件时如何在我的过滤器函数中使用this.state?