0
我有一个在SharePoint Online中承载的自定义PowerPoint Office加载项。我正在使用JavaScript API来获取有关该套牌的信息,例如当前的幻灯片ID。如何从Office加载项获取SharePoint O365文档ID
Office.initialize = function (reason) {
$(document).ready(function() {
Office.context.document.addHandlerAsync('documentSelectionChanged', onDocumentSelectionChanged);
onDocumentSelectionChanged();
});
};
function onDocumentSelectionChanged() {
Office.context.document.getSelectedDataAsync(Office.CoercionType.SlideRange,
function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
var slideId = result.value.slides[0].id;
}
});
}
我在API中找不到任何东西来获取当前SharePoint文档的ID(guid)。这是Office API的一部分,还是我可以通过其他方式获取ID?
加载项在其自己的iframe中呈现在与主窗口不同的域上,因此无法读取地址栏中的URL。 – Jared
您曾经能够将SourceDoc作为必需的标记参数传递给插件。现在他们已经将它作为json字符串移动到window.name。所以你需要做JSON.parse(window.name).xdmInfo和一些额外的字符串操作来清理URL。它包含sharepoint中的sharepoint url和文档的GUID。 – Maarten
哇,谢谢!请添加此作为答案,以便我可以接受它。我最初的搜索没有提供这个“功能”的任何文档,但我会继续寻找。我会清理一下,但是这个片段让我获得了文档ID:'JSON.parse(window.name).xdmInfo.split('|')[2] .match(/ [a-z0-9 ] {32} /)' – Jared