OfficeJS在加载时删除标头

时间:2018-09-04 17:20:49

标签: ms-word office-js

我有一段简单的代码,可以加载标题,然后更改其中的一些文本。最近,报告了一个标题被删除的问题。我已经跟踪到在加载这些文档的标题时发生的情况,看来它们在标题选项中选择了“ 链接到上一页”。我不确定为什么这会导致它被删除,因为到目前为止的代码没有进行任何更改。即使是这个简单的代码段也会导致相同的问题。

Word.run(function (context) {
    var sections = context.document.sections;
    context.load(sections);
    return context.sync().then(function() {
        if (sections !== null) {
            var headers = [];

            for (var i = 0; i < sections.items.length; i++) {
                var header = sections.items[i].getHeader('primary');
                context.load(header);
                headers.push(header);
            }                
            context.sync().then(function() {
                // when you get here all headers are deleted.
            });
        }
    }).then(context.sync);
});

1 个答案:

答案 0 :(得分:0)

经过一些测试,实际上是在删除LinkToPrevious设置。发生这种情况时,就会从该标头中删除原始标头的内容,而不会留下任何内容。

我可以通过逐节交替设置(开/关)来确定这一点。

我可以找到的Office JS API不支持

LinkToPrevious,这可以解释为什么不遵循该设置。我认为这是一个错误。

解决此问题的唯一可能方法是处理Word Open XML标头。