Javascript 在Word online加载项中插入可编辑内容控件
在我的Word插件中,我希望我的用户能够插入带有可编辑内容控件的模板。在Word客户端中工作正常,但在Word online中,我无法使其正常工作 你可以在下面找到我的代码。我收到一个调试错误,说Word Online不支持该操作。错误位置:ContentControl.Placeholder文本。 事实上,当我注释掉行设置占位符文本时,我没有得到任何错误。但是我的外接程序只添加了几行空文本,这显然不是我的目的Javascript 在Word online加载项中插入可编辑内容控件,javascript,office-js,Javascript,Office Js,在我的Word插件中,我希望我的用户能够插入带有可编辑内容控件的模板。在Word客户端中工作正常,但在Word online中,我无法使其正常工作 你可以在下面找到我的代码。我收到一个调试错误,说Word Online不支持该操作。错误位置:ContentControl.Placeholder文本。 事实上,当我注释掉行设置占位符文本时,我没有得到任何错误。但是我的外接程序只添加了几行空文本,这显然不是我的目的 Word.run(function (context) { var
Word.run(function (context) {
var thisDocument = context.document,
range = thisDocument.getSelection();
case "ProtagonistsIntroduction":
var paragraph = range.insertParagraph("Customer", Word.InsertLocation.before);
paragraph.styleBuiltIn = "Heading1";
setTemplateContentControlProperties(range, "Mr/Ms. and name", true);
//I insert here many other content controls
break;
})
.catch(function (error) {
console.log('Error: ' + JSON.stringify(error));
if (error instanceof OfficeExtension.Error) {
console.log('Debug info: ' + JSON.stringify(error.debugInfo));
}
});
function setTemplateContentControlProperties(container, placeholderText, lineBreakAfter) {
var contentControl = container.insertContentControl();
contentControl.appearance = "BoundingBox";
contentControl.removeWhenEdited = true;
contentControl.placeholderText = placeholderText;
if (lineBreakAfter) {
contentControl.insertBreak("Line", Word.InsertLocation.after);
}
return contentControl;
}
由于此工具旨在为用户提供一个包含所有信息的文档模板,因此我需要这些占位符。
有办法解决这个问题吗
在Word Online中,我可以只添加文本行而不是内容控件;但是当我在兼容的环境(Word客户端)中时,添加内容控件;如果没有比这更好的了
干杯 无法在Word Online中设置
占位符文本
,这是Word API的一个已知限制,如GitHub问题中所述:。我建议您订阅该GitHub问题的通知,以便收到产品团队的任何更新。好的,谢谢。我可以检测到我在Word Online中,然后继续使用另一种方法吗?有一些“帮助程序API”可以让您检测主机和平台信息——请参阅,以获取有关该主题的更多信息。谢谢,我会检查它的!