Sharepoint 列表将图标添加到已修改的项目

Sharepoint list add icon to modified item

我正在使用此 caml 查询 select 最近修改过的共享点列表中的所有项目。 现在我想在标题中添加某种图标作为该项目已修改的标识符。有点像 sharepoint 使用的 new.png。

<Where>
      <Gt>
         <FieldRef Name='Modified' />
         <Value Type='DateTime'>
            <Today Offset='-7' />
         </Value>
      </Gt>
   </Where>

更新: 有人有这方面的例子吗?

马可

在您的列表视图中显示修改,然后在 csr 中 select 符合条件的项目并添加图标。

<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
<script>
(function () {
    var overrideCurrentContext = {};
    overrideCurrentContext.Templates = {};
    overrideCurrentContext.OnPostRender = renderItem;
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCurrentContext);
})();


function renderItem() {
    
    
        var rows = ctx.ListData.Row;
        for (var i = 0; i < rows.length; i++) {
            var Modified = rows[i]["Modified"];     
                console.log(Modified)
            var SevenDaysAgo=   new Date(new Date().getTime()-24*60*60*1000*7);
            if(SevenDaysAgo.getTime()<new Date(Modified).getTime()){
            var rowId = GenerateIIDForListItem(ctx, rows[i]);
            var row = document.getElementById(rowId);
            $(row).find("td>div[field='LinkTitle']").append("<img src='http://sp/Shared%20Documents/download.png'/>");
            }
            
            
        }

        ctx.skipNextAnimation = true;
    
   
}

</script>

测试结果: 更新:

我终于明白了。我列表中的日期混淆了月份和日期,即使它显示正确。所以我添加了一些代码来提取日、月和年,并将它们放回原处作为 javascript 的正确日期。唯一剩下的问题是为什么它不像 AMOS_MSFT 建议的那样工作?

        var xDate = Modified.split(" ")[0];
        var xDateParts = xDate.split("-");
        var xYear = xDateParts[2];
        var xMonth = xDateParts[1]-1;
        var xDay = xDateParts[0];
        var dDate = new Date(xYear, xMonth, xDay);
        if(new Date(dDate).getTime()>SevenDaysAgo.getTime()){......

有人了解 SharePoint 中的这种行为吗?