Sharepoint dataview webpart按列左字符组成XSLT组



我有一个sharepoint 2010列表与列"proposalID"。该列中的值为5555-01、5555-02、5555-03、6666-01、6666-02等

我想按破折号左边的4个字符分组。因此,分组将在5555组下显示3个项目,在6666组下显示2个项目,等等。

使用Sharepoint Designer 2010,我添加了一个空白的数据视图web部件,连接到我的列表,并从功能区选择按提案ID列排序。它呈现了以下xsl ddwrt代码:

我一直在尝试各种语法来改变字符串函数,但没有成功。我试图从这个帖子收集一些知识,http://jamestsai.net/Blog/post/SharePoint-Data-View-Data-Form-Web-Part-Group-items-by-month-on-DateTime-field.aspx -但无法将字符串语法应用到我的情况。

谁能建议我如何完成这个分组?提前谢谢你。

<xsl:choose>
  <xsl:when test="not ($dvt_groupfield)">
    <xsl:value-of select="ddwrt:NameChanged(string(@ProposalID), 0)" />
  </xsl:when>
  <xsl:otherwise></xsl:otherwise>
</xsl:choose>

根据那篇博客文章,我假设下面的方法可以在这种情况下工作:

<xsl:choose>
  <xsl:when test="not ($dvt_groupfield)">
    <xsl:value-of select="ddwrt:NameChanged(string(substring(@ProposalID, 1, 4)), 0)" />
  </xsl:when>
  <xsl:otherwise></xsl:otherwise>
</xsl:choose>

使用1和4作为子字符串的边界。

标题也类似,也如博客文章所示:

<xsl:when test="not (@ProposalID) and (@ProposalID) != false()">
  <xsl:value-of select="' '" />
</xsl:when>
<xsl:otherwise>
    <xsl:value-of select="substring(@ProposalID,1,4)" />

你能试一下吗?

相关内容

  • 没有找到相关文章

最新更新