截断SharePoint DataFormWebPart中的HTML属性值

时间:2010-02-12 18:33:08

标签: sharepoint xslt sharepoint-2007 dataformwebpart

我正在使用DataFormWebPart显示SharePoint网站集中的所有公告。它使用SPDataSouce,将DataSourceMode设置为CrossList,它可以正常工作。公告的内容来自XML属性:

<xsl:value-of disable-output-escaping="yes" select="@Body" />

现在我需要将此文本限制为250个字符。当然,我不能将其截断为一个简单的字符串,因为它可能会产生无效的HTML。我需要像ddwrt:Limit但HTML知识的东西。

请问任何想法?

2 个答案:

答案 0 :(得分:0)

我想您想在页面中显示250个字符,请使用此脚本

<xsl:if test="string-length(@Body) &lt;= 250">

  <xsl:value-of select="@Body"/>
    </xsl:if>
    <xsl:if test="string-length(@Body) &gt; 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),' ')))" />