0

该列表在一列中包含大量文本,最好显示前 5 行文本,后跟阅读更多链接。我已经看到了 Sharepoint 2010 的示例,但没有看到 2013 年的示例。有什么想法吗?/安德烈亚斯

4

2 回答 2

0

由于客户端呈现 (CSR) 是 SharePoint 2013 中的默认呈现模式,下面将演示如何自定义正文字段。

如何使用客户端呈现 (CSR) 自定义 SharePoint 列表视图

假设一个Announcements包含Body列的列表。下面的示例演示如何截断字段内容Body并显示Read more链接

在此处输入图像描述

解决方案

A. 创建一个渲染模板,我们命名它Announcemets.js

  SP.SOD.executeFunc("clienttemplates.js", "SPClientTemplates", function() {

  function bodyFieldRenderer(ctx) {
    var item = ctx.CurrentItem;
    var headline = $(ctx.CurrentItem.Body).text().substring(0,200);
    return String.format('{0}<br/><a href="{1}&ID={2}" class="ms-accentText">Read more...</a>',headline, ctx.displayFormUrl,ctx.CurrentItem.ID);  
  }

  function init() {

    SPClientTemplates.TemplateManager.RegisterTemplateOverrides({

      Templates: {

           Fields: {
               "Body": {
                   View:bodyFieldRenderer,
               }
           }
      }
    });
  }



RegisterModuleInit(SPClientTemplates.Utility.ReplaceUrlTokens("~siteCollection/Style Library/announcements.js"), init);
  init();

});

B. 将 JavaScript 文件上传到Site Assets库中

C. 在编辑模式下打开页面并指定 Web 部件JS Link属性:

~sitecollection/SiteAssets/announcements.js

在此处输入图像描述

于 2015-03-16T12:22:30.480 回答
0

谢谢你 - 在 SharePoint Online 中为我工作 - 但需要有一个“脚本编辑器”webpart 位于带有 jquery 脚本引用的公告上方(以及下载并保存在该位置的 jquery):

<script language="javascript" src="~siteCollection/SiteAssets/scripts/jquery.min.js" type="text/javascript"></script>
<script language="javascript" src="~siteCollection/SiteAssets/scripts/jquery.SPServices.min.js" type="text/javascript"></script>
于 2018-09-12T05:10:36.930 回答