javascript - 如何使用cheerio用一个标签包装元素的子元素/子元素?

标签 javascript html cheerio

我有p里面的标签div元素。

我想包装div child / child div使用 cheerio 标记图书馆。

我尝试使用wrap :$('.parent').children().wrap('<div></div>');但它包含了我的 div 中的每个元素.

是否可以用一个标签包裹所有的子项 div像这样:

<div class="parent">
 <div>
    <p>Child 1</p>
    <p>Child 2</p>
    <p>Child 3</p>
 </div>
 </div>

我尝试执行的代码:

import cheerio from 'cheerio';

const html = `
  <div class="parent">
    <p>Child 1</p>
    <p>Child 2</p>
    <p>Child 3</p>
  </div>
`;

const $ = cheerio.load(html);

$('.parent').children().wrap('<div></div>');

console.log($.html());
// Output:
//   <div class="parent">
//     <div><p>Child 1</p></div>
//     <div><p>Child 2</p></div>
//     <div><p>Child 3</p></div>
//   </div>

最佳答案

像这样使用方法wrapInner:

$('.parent').wrapInner("<div></div>");

关于javascript - 如何使用cheerio用一个标签包装元素的子元素/子元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74912589/

相关文章:

javascript - 为什么 Angular AoT 不支持装饰器中的函数表达式?

javascript - 根据其他 child 调整div的宽度?

javascript - 如何在将 Backbone View 插入 DOM 时指定方法回调?

jquery - 通过名为 id 的数据属性单击展开菜单项

javascript - .contains() 在 Internet Explorer 中返回 false

javascript - 如何从浏览器使用 cheerio

javascript - 获取 AMP 图片 url 的条件标记

html - Ul 菜单不会在容器中留下 float

javascript - 如何使用 cheerio 获取具有不同类的元素?

javascript - Cheerio JS 获取成对的元素