ContentControl

本文介绍与文字文档ContentControl相关的API。

ContentControls

ActiveDocument.ContentControls

获取文档中的所有内容控件。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有内容控件
      const ContentControls = await app.ActiveDocument.ContentControls;
    }

方法

ActiveDocument.ContentControls.Add()

通过Add()方法,您可以在光标处插入内容控件。

重要

JS-SDK V1.1.11及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Add({ Type })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Type

    Enum

    内容控件类型,可以是WdContentControlType常量之一,如果省略Type,默认插入RTF内容控件。

    重要

    JS-SDK V1.1.15及以上版本支持添加下拉列表内容控件。

  • 返回值

    返回新增的内容控件对象。

  • 示例

    • 添加RTF内容控件

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
      
        //获取所有内容控件
        const contentControls = await app.ActiveDocument.ContentControls;
      
        //在光标处插入RTF内容控件
        await contentControls.Add();
      }
    • 添加下拉列表内容控件

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
      
        //获取所有内容控件
        const contentControls = await app.ActiveDocument.ContentControls;
      
        //在光标处插入下拉列表内容控件
        await contentControls.Add({
          Type: 4,
        });
      }

ActiveDocument.ContentControls.Item()

通过Item()方法,您可以获取文档中内容控件集合中的指定内容控件。

重要

JS-SDK V1.1.11及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Index

    Number

    第 Index 个内容控件

  • 返回值

    返回 ContentControl 对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      // 返回第  1 个 ContentControl 对象
      const contentControl = await app.ActiveDocument.ContentControls.Item(1);
    }

    ActiveDocument.ContentControls.SetItemsContent()

    通过SetItemsContent方法,您可以进行内容控件批量设置,需在jsconfig配置文件中设置wps.enableSuperContentControlApi = true

  • 语法

    表达式.ActiveDocument.ContentControls.SetItemsContent({Value, Key, CompareTitle })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Value

    String

    设置的内容

    Key

    String

    Title或者Tag关键字

    CompareTitle

    Boolean

    是否通过标题批量设置,为false时通过Tag来批量设置内容控件,为true时通过Title来批量设置

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      const contentControls = await app.ActiveDocument.ContentControls;
      await contentControls.SetItemsContent({ Value: "内容控件的批量内容替换", Key: "test", CompareTitle: true });
    }

属性

ActiveDocument.ContentControls.Count

通过Count属性,您可以获取文档中内容控件的数量。

  • 语法

    表达式.ActiveDocument.ContentControls.Count

    表达式:文档类型应用对象

  • 返回值

    返回Number代表文档中内容控件的数量。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
    
      //获取所有内容控件
      const contentControls = await app.ActiveDocument.ContentControls;
      
      //获取内容控件数量
      const count = await contentControls.Count;
      console.log(count);
    }

ContentControl

ActiveDocument.ContentControls.Item(Index)

获取单个内容控件对象。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Index

    String

    Index个内容控件。

  • 返回值

    返回查询的内容控件。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有内容控件
      const contentControls = await app.ActiveDocument.ContentControls;
    
      //获取第1个内容控件对象
      const contentControl = await contentControls.Item(1);
    }

ActiveDocument.ContentControls.Item(Index).SetPlaceholderText()

设置内容控件占位符文本。

  • 语法

    表达式.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' });
    }

属性

ActiveDocument.ContentControls.Item(Index).PlaceholderText

通过PlaceholderText属性,您可以获取单个内容控件对象的占位符文本。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).PlaceholderText

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有内容控件
      const contentControls = await app.ActiveDocument.ContentControls;
    
      //获取第1个内容控件对象
      const contentControl = await contentControls.Item(1);
    
      //获取该内容控件的占位符文本
      const placeholderText = await contentControl.PlaceholderText;
      console.log(placeholderText);
    }

ActiveDocument.ContentControls.Item(Index).Range

通过Range属性,您可以获取单个内容控件对象的范围,也可以通过Range.Text来设置和获取单个内容控件对象的文本值。

重要

JS-SDK V1.1.12及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).Range

    表达式:文档类型应用对象

  • 示例

    • 获取单个内容控件对象的范围

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const contentControls = await app.ActiveDocument.ContentControls;
      
        //获取第1个内容控件对象
        const contentControl = await contentControls.Item(1);
      
        //获取该内容控件的范围
        const range = await contentControl.Range;
        console.log(range);
      }
    • 设置和获取单个内容控件对象的文本值

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const contentControls = await app.ActiveDocument.ContentControls;
      
        //获取第1个内容控件对象
        const contentControl = await contentControls.Item(1);
      
        //获取该内容控件的范围
        const range = await contentControl.Range;
      
        //获取该内容控件的文本
        const text = range.Text;
        console.log(text);
      
        //设置该内容控件的文本值
        range.Text = 'Aliyun';
      }

ActiveDocument.ContentControls.Item(Index).Tag

通过Tag属性,您可以设置和获取单个内容控件对象的标签。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).Tag

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有内容控件
      const contentControls = await app.ActiveDocument.ContentControls;
    
      //获取第1个内容控件对象
      const contentControl = await contentControls.Item(1);
    
      //设置该内容控件的标签
      contentControl.Tag = 'Aliyun';
    
      //获取该内容控件的标签
      const Tag = await contentControl.Tag;
      console.log(Tag);
    }

ActiveDocument.ContentControls.Item(Index).Title

通过Title属性,您可以设置和获取单个内容控件对象的标题。

重要

JS-SDK V1.1.10及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).Title

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所有内容控件
      const contentControls = await app.ActiveDocument.ContentControls;
    
      //获取第1个内容控件对象
      const contentControl = await contentControls.Item(1);
    
      //设置该内容控件的标题
      contentControl.Title = 'Aliyun';
    
      //获取该内容控件的标题
      const title = await contentControl.Title;
      console.log(title);
    

ContentControlListEntries

ActiveDocument.ContentControls.Item(Index).DropdownListEntries

获取单个下拉列表内容控件对象中的所有列表选项。此为只读属性。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件获取下拉列表的所有选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      }
    • 通过指定项获取下拉列表内容控件的所有选项

      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个
        const Count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(Count).DropdownListEntries;
      }

方法

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Add()

通过Add()方法,您可以将新的列表选项添加到下拉列表或组合框内容控件,并返回ContentControlListEntry对象,代表下拉列表内容控件中的单个下拉列表选项。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Add({ Text, Value, Index })

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件为下拉列表添加选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      }
    • 通过指定项为下拉列表内容控件添加列表选项

      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个
        const Count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(Count).DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      }
      

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Clear()

通过Clear()方法,您可以从下拉列表或组合框内容控件中清除所有列表选项。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Clear()

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来清空下拉列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //3000 ms后清除该下拉列表内容控件的所有列表选项
        setTimeout(async () => {
          await ContentControlListEntries.Clear();
        }, 3000);
      }
    • 通过指定项来清空下拉列表选项

      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个
        const Count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(Count).DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //3000 ms后清除该下拉列表内容控件的所有列表选项
        setTimeout(async () => {
          await ContentControlListEntries.Clear();
        }, 3000);
      }

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.GetSelectedItem()

通过GetSelectedItem()方法,您可以获取指定下拉列表内容控件的列表选项信息。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.GetSelectedItem()

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来获取下拉列表选项的信息

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //选中该下拉列表内容控件的第1个列表选项
        await ContentControlListEntries.Item(1).Select();
      
        //获取该列表选项的信息
        const SelectedItem = await DropdownListEntries.GetSelectedItem();
        console.log(SelectedItem);
      }
    • 通过指定项来获取下拉列表内容控件的列表选项信息

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count); 
      
        //获取下拉列表的所有选项
        const ContentControlListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表的第1个选项
        const DropdownListEntry1 = await ContentControlListEntries.Item(1);
      
        //选中该列表选项
        await DropdownListEntry1.Select();
      
        //获取该列表选项的信息
        const SelectedItem = await DropdownListEntries.GetSelectedItem();
        console.log(SelectedItem);
      }

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.UnSelect()

通过UnSelect()方法,您可以取消选中下拉列表内容控件的列表选项。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Clear()

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来取消选中列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //选中该下拉列表内容控件的第1个列表选项
        await ContentControlListEntries.Item(1).Select();
      
        //3000 ms后取消选中该列表选项
        setTimeout(async () => {
          await ContentControlListEntries.UnSelect();
        }, 3000);
      }
    • 通过指定项来取消选中下拉列表内容控件的列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count);
      
        //获取该下拉列表内容控件的所有列表选项
        const DropdownListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表内容控件的第1个列表选项
        const DropdownListEntry1 = await DropdownListEntries.Item(1);
      
        //选中该列表选项
        await DropdownListEntry1.Select();
      
        //3000 ms后取消选中该列表选项
        setTimeout(async () => {
          await ContentControlListEntries.UnSelect();
        }, 3000);
      }

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item()

通过Item()方法,您可以获取集合中的指定项。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    说明

    Index

    Number

    第 Index 个下拉列表的选项

  • 示例

    • 通过新增下拉内容控件来给清空下拉列表选项

      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;
      
        // 3、给该控件添加选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        // 3、给该控件添加选项:Value 和 Index 可以不填,这样 Value 会等于 Text,Index 就是添加到最后面
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        // 4、获取第 1 项
        const ContentControlListEntry1 = await ContentControl.DropdownListEntries.Item(1);
      }
    • 通过指定项来给清空下拉列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        // 内容控件对象
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        // 1、新增一个下拉内容控件
        const ContentControl = await app.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        // 2、给该控件添加选项
        await ContentControl.DropdownListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        // 2、给该控件添加选项:Value 和 Index 可以不填,这样 Value 会等于 Text,Index 就是添加到最后面
        await ContentControl.DropdownListEntries.Add({
          Text: 'Text 2',
        });
      
        // 3、获取文档中的内容控件数量(包含文本和下拉内容控件)
        const counts = await app.ActiveDocument.ContentControls.Count;
        console.log(counts); // 假设这里有 2 个(打印为 2),那么新增的那个内容控件就是第 2 个
      
        // 4、获取第 1 个下拉内容控件的下拉列表
        const DropdownListEntries = await app.ActiveDocument.ContentControls.Item(1).DropdownListEntries;
      
        // 5、获取该下拉列表的第 1 个选项(Text 1)
        const 
        DropdownListEntry1 = await DropdownListEntries.Item(1);
      }

属性

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Count

通过Count属性,您可以获取下拉列表内容控件中列表选项的总数量。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Count

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来获取列表选项的总数量

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //为该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //获取该下拉列表内容控件中列表选项的总数量
        const Count = await ContentControlListEntries.Count;
        console.log(Count);
      }
    • 通过指定项来获取总数量

      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个
        const Count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(Count).DropdownListEntries;
      
        //获取该下拉列表内容控件中列表选项的总数量
        const Count = await ContentControlListEntries.Count;
        console.log(Count);
      }

ContentControlListEntry

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item()

获取单个下拉列表内容控件对象中的单个列表选项。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Index

    Number

    Index个下拉列表选项。

  • 示例

    • 通过新增下拉列表内容控件来获取单个列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //获取该下拉列表内容控件的第1个列表选项
        const ContentControlListEntry1 = await ContentControlListEntries.Item(1);
      }
    • 通过指定项来获取下拉列表内容控件的单个列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个列表下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count);
      
        //获取该下拉列表内容控件的所有列表选项
        const DropdownListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表内容控件的第1个列表选项
        const DropdownListEntry1 = await DropdownListEntries.Item(1);
      }

方法

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Delete()

通过Delete()方法,您可以删除单个下拉列表或组合框内容控件中的列表选项。

重要
  • JS-SDK V1.1.15及以上版本支持此功能。

  • 列表中至少会留下一个选项,如果最终列表为空,那么会留下列表中的第一个列表选项。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Delete()

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来删除列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //选中该下拉列表内容控件的第1个列表选项
        await ContentControlListEntries.Item(1).Select();
      
        //删除该列表选项
        await ContentControlListEntries.Item(1).Delete();
      }
    • 通过指定项来删除下拉列表内容控件的列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count);
      
        //获取该下拉列表内容控件的所有列表选项
        const DropdownListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表内容控件的第1个列表选项
        const DropdownListEntry1 = await DropdownListEntries.Item(1);
      
        //选中该列表选项
        await DropdownListEntry1.Select();
      
        //删除该列表选项
        await DropdownListEntry1.Delete();
      }

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Select()

通过Select()方法,您可以选择单个下拉列表或组合框内容控件中的列表选项。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Select()

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来选择列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //选中该下拉列表内容控件的第1个列表选项
        await ContentControlListEntries.Item(1).Select();
      }
    • 通过指定项来选择下拉列表内容控件的列表选项

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count);
      
        //获取该下拉列表内容控件的所有列表选项
        const DropdownListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表内容控件的第1个列表选项
        const DropdownListEntry1 = await DropdownListEntries.Item(1);
      
        //选中该列表选项
        await DropdownListEntry1.Select();
      }

属性

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Text

通过Text属性,您可以设置和获取单个下拉列表或组合框内容控件中列表选项的显示文本。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Text

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来获取列表选项的显示文本

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //获取该下拉列表内容控件的第1个列表选项的显示文本
        const Text = await ContentControlListEntries.Item(1).Text;
        console.log(Text);
      }
    • 通过指定项来获取下拉列表内容控件中列表选项的显示文本

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count);
      
        //获取该下拉列表内容控件的所有列表选项
        const DropdownListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表内容控件的第1个列表选项
        const DropdownListEntry1 = await DropdownListEntries.Item(1);
      
        //获取该列表选项的显示文本
        const Text = await DropdownListEntry1.Text;
        console.log(Text);
      }

ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Value

通过Value属性,您可以获取单个下拉列表或组合框内容控件中列表选项的值。

重要

JS-SDK V1.1.15及以上版本支持此功能。

  • 语法

    表达式.ActiveDocument.ContentControls.Item(Index).DropdownListEntries.Item(Index).Value

    表达式:文档类型应用对象

  • 示例

    • 通过新增下拉列表内容控件来获取下拉列表选项的值

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await ContentControls.Add({
          Type: 4,
        });
      
        //获取该下拉列表内容控件的所有列表选项
        const ContentControlListEntries = await ContentControl.
        DropdownListEntries;
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //获取该下拉列表内容控件中第1个列表选项的值
         const Value = await ContentControlListEntries.Item(1).Value;
        console.log(Value);
      }
    • 通过指定项来获取下拉列表内容控件中列表选项的值

      async function example() {
        await instance.ready();
      
        const app = instance.Application;
        
        //获取所有内容控件
        const ContentControls = await app.ActiveDocument.ContentControls;
      
        //新增1个下拉列表内容控件
        const ContentControl = await WPSOpenApi.Application.ActiveDocument.ContentControls.Add({
          Type: 4,
        });
      
        //给该下拉列表内容控件添加列表选项
        await ContentControlListEntries.Add({
          Text: 'Text 1',
          Value: 'Value 1',
          Index: 1,
        });
      
        //给该下拉列表内容控件添加列表选项ValueIndex,如果不填,Value会等于Text
        await ContentControlListEntries.Add({
          Text: 'Text 2',
        });
      
        //获取文档中的内容控件数量(包含文本和下拉列表内容控件)
        //假设有2个(打印为2),那么新增的内容控件就是第2个
        const count = await WPSOpenApi.Application.ActiveDocument.ContentControls.Count;
        console.log(count);
      
        //获取该下拉列表内容控件的所有列表选项
        const DropdownListEntries = await WPSOpenApi.Application.ActiveDocument.ContentControls.Item(2).DropdownListEntries;
      
        //获取该下拉列表内容控件的第1个列表选项
        const DropdownListEntry1 = await DropdownListEntries.Item(1);
      
        //获取该列表选项的值
        const Value = await DropdownListEntry1.Value;
        console.log(Value);
      }