如何计算 SharePoint 库/列表中的新项目数

How can I count the number of new items in SharePoint library/list?

本文关键字:列表 项目数 新项目 SharePoint 何计算 计算      更新时间:2023-09-26

在SharePoint Online中,库中的新文档有一个绿色符号。我发现这个类被称为"ms-newdocument-icon"。如何检查文档库中有多少项目具有 ms-newdocument-icons 类?

<script type="text/javascript">
var clientContext = null;
var web = null;
var listItems = null;
var list = null;
ExecuteOrDelayUntilScriptLoaded(Initialize, "sp.js");
function Initialize()
{
    clientContext = new SP.ClientContext.get_current();
    web = clientContext.get_web();
    list = web.get_lists().getByTitle("Document");
    var camlQuery = new SP.CamlQuery();
    var q = "<View></View>";
    camlQuery.set_viewXml(q);
    listItems = list.getItems(camlQuery);
    clientContext.load(listItems);
    clientContext.executeQueryAsync(onListItemsLoadSuccess, onQueryFailed);
}
    function onListItemsLoadSuccess(sender, args) {
        var listItemEnumerator = listItems.getEnumerator();
        while(listItemEnumerator.moveNext()) {
            var newItemsCount = null;
            if() { //$(this).hasClass('ms-newdocument-icon');
            newItemsCount++;
        }
        $('#newItems').html(newItemsCount);
   }
   function onQueryFailed(sender, args) {
     alert('request failed ' + args.get_message() + ''n' + args.get_stackTrace());
}
</script>
<div class="newItemsContent">
    <h2>New items:</h2> <h2 id="newItems"></h2>
</div>

您提到的类仅用于指示页面中呈现的HTML中的新项目。图标不存储在列表项数据(字段)中。您可以使用此 PS 脚本设置新项目的图标显示多少天:

$wa = Get-SPWebAppication -Identity:http://webappurl
$wa.DaysToShowNewIndicator = {SomeInteger}
$wa.Update()

因此,如果您想知道有多少文档/项目显示了此图标,则需要读取此参数,然后在 CAML 查询中使用它。读取所有项目,然后检查它们是否在过去 N 天内创建,这不是一个好主意。更好的方法是使用当前日期和 DaysToShowNewIndicator 值构造 CAML 查询。