javascript - 如何使用 jQuery 删除 html 字符串中的元素

标签 javascript jquery html-parsing

我有一个 Html 字符串,我想将它解析为 html,然后删除所有 pre 标签及其子标签。 我试过这个:

HTMLString = "<p>a paragraph</p><p>second Paragraph</p><pre>&lt;script&gt;&nbsp;&nbsp;&nbsp;&nbsp;function (){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;something();&nbsp;&nbsp;&nbsp;&nbsp;}&lt;/script&gt;</pre>";
var $jQueryObject = $($.parseHTML(HTMLString));
alert($jQueryObject.find('pre').length);

但这提醒我 0,这意味着它找不到任何 pre 标记。 谁能告诉我我的代码有什么问题?

this is my fiddle

HTMLString = "<p>a paragraph</p><p>second Paragraph</p><pre>&lt;script&gt;&nbsp;&nbsp;&nbsp;&nbsp;function (){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;something();&nbsp;&nbsp;&nbsp;&nbsp;}&lt;/script&gt;</pre>";
    var $jQueryObject = $($.parseHTML(HTMLString));
alert($jQueryObject.find('pre').length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

最佳答案

HTMLString = "<p>a paragraph</p><p>second Paragraph</p><pre>&lt;script&gt;&nbsp;&nbsp;&nbsp;&nbsp;function (){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;something();&nbsp;&nbsp;&nbsp;&nbsp;}&lt;/script&gt;</pre>";
    var $jQueryObject = $("<div/>").html(HTMLString);
    console.log("Befor Remove tag: "+ $jQueryObject.find('pre').length);
    $jQueryObject.find('pre').remove();
    console.log("After Remove tag: "+ $jQueryObject.find('pre').length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

关于javascript - 如何使用 jQuery 删除 html 字符串中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47969084/

相关文章:

javascript - 有什么方法可以在纯 javascript 中将元素作为函数获取?

javascript - 影子 DOM 不显示内容。如何使内容在 DOM 中可见?

javascript - 如果我在页面发送到服务器后立即重新加载或关闭页面,异步 Ajax 请求是否会完成?

java - Tika - 是否可以获取 div 标签的 id 属性?

html-parsing - 我如何获取 html.Node 的内容

javascript - 更改 HTML 字符串中的图像源属性并再次返回 HTML 字符串

javascript - 将浏览器全屏并在按钮单击时刷新(模拟 F11)JavaScript

javascript - 后退按钮未加载页面内容 - JQuery Mobile

jquery - NextAll 整个页面

JQuery跨域基本认证调用