我正在使用DataFormWebPart显示SharePoint网站集中的所有公告。它使用SPDataSouce,将DataSourceMode设置为CrossList,它可以正常工作。公告的内容来自XML属性:
<xsl:value-of disable-output-escaping="yes" select="@Body" />
现在我需要将此文本限制为250个字符。当然,我不能将其截断为一个简单的字符串,因为它可能会产生无效的HTML。我需要像ddwrt:Limit但HTML知识的东西。
请问任何想法?
答案 0 :(得分:0)
我想您想在页面中显示250个字符,请使用此脚本
<xsl:if test="string-length(@Body) <= 250">
<xsl:value-of select="@Body"/>
</xsl:if>
<xsl:if test="string-length(@Body) > 250">
<xsl:value-of select="substring(@Body,0,250)"/>....
</xsl:if>
答案 1 :(得分:0)
我找到了一个非常简单的解决方案,试试这个!
<xsl:value-of select="substring(@Body, 1, 250 + string-length(substring-before(substring(@Body, 250),' ')))" />