主题
内容控件
ContentControls
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
文档中的所有内容控件
语法
表达式.ActiveDocument.ContentControls
表达式:文档类型应用对象
Count
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
获取文档内容控件的数量
语法
表达式:ActiveDocument.ContentControls.Count
表达式:文档类型应用对象
返回值
返回 Number
代表文档内容控件的数量。
示例
//@file=base.docx
// 获取文档内容控件的数量
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 内容控件数量
const count = await contentControls.Count
console.log(count)
}
Add({ Type })
JSSDK: v1.1.11+、WebOffice v3.1.1+ 支持
在光标处插入内容控件
语法
表达式.ActiveDocument.ContentControls.Add({ Type })
表达式:文档类型应用对象
参数
Type 属性于 JSSDK: v1.1.15+、WebOffice v4.1.1+ 新增支持,支持下拉内容控件的添加
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Type | Enum | 是 | 内容控件类型,如果省略 Type,默认插入 RTF 内容控件。可以是 WdContentControlType 常量之一 |
返回值
返回新增的 ContentControl 对象
示例 1:添加 RTF 内容控件
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 在光标处插入内容控件
await contentControls.Add()
}
示例 2:添加下拉内容控件
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 在光标处插入下拉内容控件
await contentControls.Add({
Type: 4
})
}
Item()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 ContentControl 对象,该对象代表文档中内容控件集合中的指定内容控件
语法
表达式.ActiveDocument.ContentControls.Item(Index)
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | Number | 是 | 第 Index 个内容控件 |
返回值
返回 ContentControl 对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 返回第 1 个 ContentControl 对象
const contentControl = await app.ActiveDocument.ContentControls.Item(1)
}
Item(Index).DropdownListEntries
JSSDK: v1.1.15+、WebOffice v3.4.1+ 支持
获取下拉列表内容控件中的所有项。只读。返回 ContentControlListEntries 对象,代表下拉内容控件的下拉列表
语法
表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries
表达式:文档类型应用对象
示例 1:通过新增下拉内容控件来获取下拉列表
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const ContentControls = await app.ActiveDocument.ContentControls
// 1、新增一个下拉内容控件
const ContentControl = await ContentControls.Add({
Type: 4
})
// 2、获取该下拉内容控件的下拉列表
const ContentControlListEntries = await ContentControl.DropdownListEntries
}
示例 2:通过指定项来获取下拉列表
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const ContentControls = await app.ActiveDocument.ContentControls
// 1、新增一个下拉内容控件
const ContentControl = await ContentControls.Add({
Type: 4
})
// 2、获取文档中的内容控件数量(包含文本和下拉内容控件)
// 假设这里有 2 个(打印为 2),那么新增的那个内容控件就是第 2 个
const Count = await app.ActiveDocument.ContentControls.Count
// 3、获取第 2 个下拉内容控件的下拉列表
const ContentControlListEntries =
await app.ActiveDocument.ContentControls.Item(Count).DropdownListEntries
}
Item(Index).PlaceholderText
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
获取内容控件占位符文本
语法
表达式.ActiveDocument.ContentControls.Item(Index).PlaceholderText
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 获取第 1 个内容控件
const contentControl = await contentControls.Item(1)
// 获取第 1 个内容控件占位符文本
const placeholderText = await contentControl.PlaceholderText
console.log(placeholderText)
}
Item(Index).Range
JSSDK: v1.1.12+、WebOffice v3.1.1+ 支持
内容控件的范围
可以通过 Range.Text,来获取和设置内容控件的文本值
语法
表达式.ActiveDocument.ContentControls.Item(Index).Range
表达式:文档类型应用对象
示例 1:获取内容控件的范围
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 获取第 1 个内容控件
const contentControl = await contentControls.Item(1)
// 获取第 1 个内容控件的范围
const range = await contentControl.Range
console.log(range)
}
示例 2:获取和设置内容控件的文本值
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 获取第 1 个内容控件
const contentControl = await contentControls.Item(1)
// 获取第 1 个内容控件的范围
const range = await contentControl.Range
// 获取第 1 个内容控件的文本
const text = range.Text
console.log(text)
// 设置第 1 个内容控件的文本
range.Text = 'WebOffice'
}
Item(Index).Tag
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
内容控件的标签
语法
表达式.ActiveDocument.ContentControls.Item(Index).Tag
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 获取第 1 个内容控件
const contentControl = await contentControls.Item(1)
// 设置第 1 个内容控件的标签
contentControl.Tag = 'WebOffice'
// 获取第 1 个内容控件的标签
const Tag = await contentControl.Tag
console.log(Tag)
}
Item(Index).Title
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
内容控件的标题
语法
表达式.ActiveDocument.ContentControls.Item(Index).Title
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 获取第 1 个内容控件
const contentControl = await contentControls.Item(1)
// 设置第 1 个内容控件的标题
contentControl.Title = 'WebOffice'
// 获取第 1 个内容控件的标题
const title = await contentControl.Title
console.log(title)
}
Item(Index).SetPlaceholderText()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
设置内容控件占位符文本
语法
表达式.ActiveDocument.ContentControls.Item(Index).SetPlaceholderText({ Text })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Text | String | 是 | 第 Index 个内容控件的文本 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls
// 获取第 1 个内容控件
const contentControl = await contentControls.Item(1)
// 设置第 1 个内容控件的文本
await contentControl.SetPlaceholderText({ Text: 'WebOffice' })
}