除了粗体之外,Jquery删除所有内容

No_*_*ame 5 html javascript jquery selector jsoup

我有这样的HTML:

<div id="divTestArea1">
    <b>Bold text</b>
    <i>Italic text</i>
    <div id="divTestArea2">
            <b>Bold text 2</b>
            <i>Italic text 2</i>
            <div>
                    <b>Bold text 3</b>
            </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

我想删除所有非粗体的元素.我试过这段代码:

$('*:not(b)').remove();
Run Code Online (Sandbox Code Playgroud)

以及其他一些变化,但它们都会出错或删除所有内容.顺便说一下,jquery选择器和jsoup选择器是否100%兼容?我也想在jsoup中使用这个答案.

Ale*_*cki 5

您当前的代码将删除文档<body>以及<div>包含<b>标记的所有文档.如果您只想保存粗体文本,那么Shih-En Chou的解决方案效果很好.如果要保存标记所在的<div>结构,<b>可以执行以下操作:

$("body *:not(div, b)")????.remove();?
Run Code Online (Sandbox Code Playgroud)

DEMO