You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用cheeriojs如何输出选中标签自身(含属性)而非内部内容

你使用的.html()方法仅返回元素内部的子节点内容,因此只会输出foo标签包裹的emphasis部分。要实现保留foo标签本身及所有属性、清空内部内容的需求,可修改代码如下:

const elements = $('foo')
for (let i = 0; i < elements.length; i++) {
   const e = elements[i]
   // 克隆元素避免修改原DOM,清空内部内容后获取包含自身的完整XML字符串
   console.log($(e).clone().empty().prop('outerHTML'))
}

代码说明

  • .clone():克隆当前foo元素,避免修改原始DOM结构影响后续其他逻辑
  • .empty():清空元素所有内部子节点,仅保留标签本身和全部属性
  • .prop('outerHTML'):获取包含元素自身、所有属性的完整XML字符串,配合你初始化时开启的xmlMode: true配置,输出结果完全符合XML格式要求

如果不需要保留原始foo元素的内部内容,也可以省略.clone()直接操作原元素。

内容的提问来源于stack exchange,提问作者punkish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 02:24:06