gpt4 book ai didi

SharePoint 2013 - 通过 REST 获取 SPListItem 版本

转载 作者:行者123 更新时间:2023-12-02 11:30:58 25 4
gpt4 key购买 nike

我有一个启用了版本控制的 SharePoint 2013 列表。我需要通过 REST 获取 SPListItem 版本列表。我可以通过该请求获取 SPListItem:http://spbreportportal/Projects/_api/lists/getbytitle('Projects')/Items(1)但我无法在文档和响应中找到如何检索该项目的所有版本。可能吗?

最佳答案

似乎不可能获得 List Item 的版本通过 REST/CSOM API,但还有替代选项

使用Versions.aspx申请页面

这个想法是对版本页面执行获取请求:http://<server>/<site>/_layouts/versions.aspx?list={litsID}&ID=<itemID>

function getItemVersions(url,listId,itemId,success)
{
var versionsUrl = url + '/_layouts/versions.aspx?list=' + listId + '&ID=' + itemId;
$.get( versionsUrl, function( data ) {
var versionEntries = parseVersionList(data);
success(versionEntries);
});
}


function parseVersionList(data){
var entries = {};
var versionList = $(data).find('table.ms-settingsframe');


versionList.find('tbody > tr').each(function(i){
if(i > 0 && (i-1) % 2 == 0) {
var verRow = $(this); //get version row
var propsRow = verRow.next(); //get properties row
var versionLabel = verRow.find('td:first').html().trim();
entries[versionLabel] = {};
//extract item properties from propsRow goes here
//...
}

});
return entries;
}


//Usage
var webUrl = _spPageContextInfo.webAbsoluteUrl;
var listId = _spPageContextInfo.pageListId;
var listItemId = 1;
getItemVersions(webUrl,listId,listItemId,function(versionEntries){
console.log(versionEntries);
});

使用列表 SharePoint Web 服务

另一个选择是利用公开 Lists.GetVersionCollection Method 的列表 SharePoint Web 服务返回 SharePoint 列表中指定字段的版本信息

SPServices示例:

$().SPServices({
operation: "GetVersionCollection",
async: false,
strlistID: "Projects",
strlistItemID: 1,
strFieldName: "Description",
completefunc: function (xData, Status) {
$(xData.responseText).find("Version").each(function(i) {
console.log("Name: " + $(this).attr("Description") + " Modified: " + $(this).attr("Modified"));
});
}
});

关于SharePoint 2013 - 通过 REST 获取 SPListItem 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24423657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com