Javascript Office.js选择文本并将其替换为ContentControl
我使用Office.js有以下用例:Javascript Office.js选择文本并将其替换为ContentControl,javascript,office-js,Javascript,Office Js,我使用Office.js有以下用例: 使用body.search()搜索某些文本 在找到文本后,可以多次出现,对它们进行迭代,并用具有不同内容的ContentControl替换它们 搜索部分很简单,但我不确定第二部分。在光标位置插入ContentControl并操纵它的HTML内容不是问题,但我不确定是否可以通过编程选择字符串,然后用其他内容替换它。它是? 或者我应该围绕所选文本创建一个ContentControl,然后仅仅操纵它的HTML内容吗 这是我到目前为止的代码,在Word中。运行:
- 使用
body.search()搜索某些文本
- 在找到文本后,可以多次出现,对它们进行迭代,并用具有不同内容的ContentControl替换它们
Word中。运行:
const res = context.document.body.search('[{]*[}]', {matchWildCards: true});
context.load(res, 'text');
return context.sync().then(() => {
const citeKeys = [];
for (let i = 0; i < res.items.length; i += 1) {
// iterate through found strings by accessing res.items[i].text
}
// ...
const res=context.document.body.search(“[{]*[}]”,{matchWildCards:true});
加载(res,'text');
返回context.sync()。然后(()=>{
常数citeKeys=[];
对于(设i=0;i
搜索字符串后,body.search将向您返回一个集合,您可以循环范围集合并调用range.insertText(“…”,“replace”)
。此insertText
方法还将返回一个范围
,然后您可以在其上调用range.insertContentControl
。我认为这将帮助您实现目标。听起来很合理,我将尝试一下,然后返回此线程。