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

Office.js Word API无法读取纯文本类型内容控件问题咨询

Word API无法获取纯文本内容控件的解决方案

问题描述

尝试通过Word API获取文档中所有内容控件,根据官方文档说明,API支持RichText(富文本)和Plain Text(纯文本)类型的内容控件,但实际调用中仅能获取到富文本类型,纯文本控件完全无法读取。使用的代码如下:

const contentControls = doc.contentControls;
contentControls.load('title, tag, type'); 
return context.sync().then(function () {
  // Loop through the content controls
  console.log(contentControls.items.length);
  for (let i = 0; i < contentControls.items.length; i++) {
    const contentControl = contentControls.items[i];
    console.log(`Content Control #${i + 1}`);
    console.log('Title: ', contentControl.title);
    console.log('Tag: ', contentControl.tag);
    console.log('Type: ', contentControl.type);
  }
});

分别尝试引用beta版和v1版的office.js,结果一致,均只返回富文本内容控件。

解决办法

1. 检查内容控件的锁定状态

纯文本内容控件若被设置为不可编辑(锁定),默认不会被doc.contentControls集合返回。需确认目标控件处于可编辑状态,或在加载时指定包含锁定控件的选项。

2. 修改加载参数,包含锁定/隐藏控件

调用load()方法时,添加加载选项明确要求返回所有类型的内容控件:

contentControls.load({
  select: 'title, tag, type',
  includeHiddenContentControls: true,
  includeLockedContentControls: true
});

3. 确认控件类型为标准纯文本控件

确保文档中的纯文本控件是Word原生的"Plain Text Content Control",而非第三方插件或自定义生成的控件——非标准控件可能无法被Word API识别。

4. 使用最新稳定版API

优先使用最新稳定版office.js(当前为v1.1),避免beta版本的兼容性问题。

验证建议

修改代码后重新运行,若仍无法获取纯文本控件,可尝试在新文档中创建标准纯文本控件进行测试,排除文档格式异常的可能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 04:32:44