0

我需要在当前选择段落之后插入一个带有 ContentControl 的段落,假设当前选择在任何段落、表格或 CC 的中间,我需要在之后插入一个带有 CC 的新段落。

我尝试了下面的代码来获取当前选择并将范围设置为末尾,然后将在其后插入段落:

var range = context.document.getSelection().getRange("end");
range.insertParagraph("","After");

但它在当前选择之后插入段落,而不是在当前选择父项之后。

请指教。谢谢。

4

1 回答 1

0

您所观察的是设计使然。您正在获得选择的范围。您需要做的是获取段落的范围,然后在之后添加另一个。

所有范围都有一个段落集合,第一段将包含选择的段落,因此您可以通过调用获得tit:

context.document.getSelection().paragraphs.getFirst().getRange().insertParagraph("",after");

完整的代码示例如下所示:

Word.run(async (context) => {
            var myParagraph = context.document.getSelection().paragraphs.getFirst().getRange().insertParagraph("", "after")
            myParagraph.insertContentControl();
            return context.sync();
        })
    
    .catch(function (error) {
        console.log(error.message)
    }) 

注意:如果选择扩展超过一个段落,可能您需要执行 getLast() 而不是 getFirst(),但我不确定您的确切情况。

谢谢!

于 2017-03-31T06:49:49.290 回答