我正在为word开发一个加载项。主要任务是使用来自数据库的数据填充文档中的书签。在office.js中我发现书签可以作为范围对象访问我使用“rangeObject.insertText(text,insertLocation)”方法将数据插入书签。但问题是第二个参数insertLocation值可以是'Replace','Start','End','Before'或'After'。这基本上是在书签之前或之后附加数据。就像这样 - image 1 (current result using insertLocation value 'End')
使用insertLocation值'替换'它取代整个书签,实际上从文档中删除书签!。所以我想要的是在书签中插入一个文本,如下所示 - image 2 (desired result)
注意:我必须稍后阅读这些书签值。所以没有书签可以删除。我正在使用office.js api的1.4 beta版本。
这是我的代码 -
Word.run(function (context) {
var doc = context.document;
//get the bookmark range by its name
var bookmarkRange = doc.getBookmarkRangeOrNullObject("cscasenumber01");
//insert a data
bookmarkRange.insertText("test data",'end');
// Synchronize the document state by executing the queued commands,
return context.sync();
}).catch(errorHandler);
答案 0 :(得分:2)
非常感谢您使用我们的预览API。你刚发现它的错误!我只是重复这种行为。是的,关于之前,开始,结束,之后的语义在API上非常明确。
我们会解决这个问题,虽然我没有明确的时间表。 谢谢。