【发布时间】:2020-04-08 18:27:18
【问题描述】:
我正在使用生成索引的 office-js 编写 Word 加载项。它使用以下代码在文档末尾创建分节符,然后在此处写入索引:
function WriteIndex() {
Word.run(function (context) {
//
var html = GenerateIndex(); // generate the index as an html string
//
if (html.length > 0) {
var body = context.document.body;
body.insertBreak(Word.BreakType.sectionNext, Word.InsertLocation.end);
body.select("End"); // put it at the end
return context.sync().then(function () {
body = context.document.body;
body.select("End"); // put it at the end
body.insertHtml(html, Word.InsertLocation.end);
return context.sync();
});
}).catch(handleError);
}
到目前为止,一切都很好——它就像我想要的那样工作。但现在我希望能够重新运行该函数并删除在重新生成和重写之前存在的索引。
我想我可以将索引的内容放入一个范围并删除它。但是我在 API 中找不到可以删除分节符的任何地方。我在link 找到了一些代码,它遍历文档部分集合并收集 all 部分的内容,然后仅用所需部分替换文档的全部内容。但这种方法对我来说既冒险又令人费解。另一种方法可能是本质上导航到文档的末尾并执行退格操作,因为这是您使用 Word UI 删除分节符的方式,但我在 API 文档中也找不到任何内容来执行此操作。
API 是否允许您创建分节符但不允许您删除它们?有没有人做过这样的事情?有更好的方法吗?
非常感谢。
【问题讨论】:
标签: javascript ms-word office-js word-addins