如何在SharePoint中的公告中创建指向段落其余部分的链接,该链接显示单词:了解更多
干杯
答案 0 :(得分:1)
我发现最干净,最简单的方法是在ItemStyle.xsl中创建一个模板,该模板选择公告正文内容的子字符串,并在文章下方显示一个链接。
将以下代码添加到ItemStyle.xsl文件后(在SharePoint Designer中导航到“样式库/ XSL样式表”文件夹),您可以通过浏览器修改Web部件,并更改项目样式(演示文稿/样式)'ReadMoreAnnouncements'。此代码将显示的字符数保持为190个字符(请参阅子字符串($ bodyContent,1,190函数调用)。
<xsl:template name="removeMarkup">
<xsl:param name="string" />
<xsl:choose>
<xsl:when test="contains($string, '<')">
<xsl:variable name="nextString">
<xsl:call-template name="removeMarkup">
<xsl:with-param name="string" select="substring-after($string, '>')" />
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="concat(substring-before($string, '<'), $nextString)" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$string" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="ReadMoreAnnouncements" match="Row[@Style='ReadMoreAnnouncements']" mode="itemstyle">
<br />
<div class="RMAnnouncementsTitle">
<xsl:value-of select="@Title" />
</div>
<div class="RMAnnouncementsBody">
<xsl:variable name="bodyContent">
<xsl:call-template name="removeMarkup">
<xsl:with-param name="string" select="@Body"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="substring($bodyContent,1,190)" />
...
<br />
<a>
<xsl:attribute name="href">
/Lists/Announcements/DispForm.aspx?ID=
<xsl:value-of select="@ID">
</xsl:value-of>
</xsl:attribute>
<xsl:attribute name="class">
RMAnnouncementsMoreLink
</xsl:attribute>
read more
</a>
</div>
</xsl:template>
这绝对有用,而且非常容易实现。
答案 1 :(得分:0)