单击时增加 XML 参数
Increment XML parameter on click
我有一个 RSS 提要,其 FeedLimit 参数为 5
我想在底部放一个按钮 "View Next Five"
为了做到这一点,我想我需要一个嵌入了一些 javascript 的 href
,它将设置 FeedLimit = FeedLimit+5
尽管从我的研究来看似乎增加 XML 参数的唯一方法是在循环中。
我的代码段如下,您会注意到有一个 ToggleItemDescription,shows/hides 每个项目的描述..这是我的灵感,但它是由 SharePoint
<xsl:param name="rss_FeedLimit">5</xsl:param>
<xsl:template name="RSSMainTemplate.body" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt">
<xsl:param name="Rows"/>
<xsl:param name="RowCount"/>
<xsl:for-each select="$Rows">
<xsl:variable name="CurPosition" select="position()" />
<xsl:variable name="RssFeedLink" select="$rss_WebPartID" />
<xsl:variable name="CurrentElement" select="concat($RssFeedLink,$CurPosition)" />
<xsl:if test="($CurPosition <= $rss_FeedLimit)">
<div class="item link-item" >
<a href="{concat("javascript:ToggleItemDescription('",$CurrentElement,"')")}" >
<xsl:variable name="SafeHtml">
<xsl:call-template name="GetSafeHtml">
<xsl:with-param name="Html" select="title"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/>
</a>
<xsl:if test="$rss_ExpandFeed = true()">
<xsl:call-template name="RSSMainTemplate.description">
<xsl:with-param name="DescriptionStyle" select="string('display:block;')"/>
<xsl:with-param name="CurrentElement" select="$CurrentElement"/>
</xsl:call-template>
</xsl:if>
<xsl:if test="$rss_ExpandFeed = false()">
<xsl:call-template name="RSSMainTemplate.description">
<xsl:with-param name="DescriptionStyle" select="string('display:none;')"/>
<xsl:with-param name="CurrentElement" select="$CurrentElement"/>
</xsl:call-template>
</xsl:if>
</div>
</xsl:if>
</xsl:for-each>
<div class="description">
<h4 class="ms-rteElement-H4B">
<span class="ms-rteStyle-Emphasis">
<br></br>View More Articles <img alt="more-icon-1.png" src="/BHiveImageGallery/Stock-Images/more-icon-1.png"/>
</span>
<span class="ms-rteStyle-Emphasis"> </span>
</h4>
</div>
</xsl:template>
经过研究,似乎 XML / XSL 不允许您在写入后覆盖 parameter/variable 值。
我不确定我请求的功能是否可行。您可以迭代 5 的倍数并将每个作为其自己的参数存储。但最后决定显示完整列表而不是递增当前显示,因此不需要此答案。
无法覆盖参数值使得这是一个非常棘手的问题
我有一个 RSS 提要,其 FeedLimit 参数为 5
我想在底部放一个按钮 "View Next Five"
为了做到这一点,我想我需要一个嵌入了一些 javascript 的 href
,它将设置 FeedLimit = FeedLimit+5
尽管从我的研究来看似乎增加 XML 参数的唯一方法是在循环中。
我的代码段如下,您会注意到有一个 ToggleItemDescription,shows/hides 每个项目的描述..这是我的灵感,但它是由 SharePoint
<xsl:param name="rss_FeedLimit">5</xsl:param>
<xsl:template name="RSSMainTemplate.body" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt">
<xsl:param name="Rows"/>
<xsl:param name="RowCount"/>
<xsl:for-each select="$Rows">
<xsl:variable name="CurPosition" select="position()" />
<xsl:variable name="RssFeedLink" select="$rss_WebPartID" />
<xsl:variable name="CurrentElement" select="concat($RssFeedLink,$CurPosition)" />
<xsl:if test="($CurPosition <= $rss_FeedLimit)">
<div class="item link-item" >
<a href="{concat("javascript:ToggleItemDescription('",$CurrentElement,"')")}" >
<xsl:variable name="SafeHtml">
<xsl:call-template name="GetSafeHtml">
<xsl:with-param name="Html" select="title"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="$SafeHtml" disable-output-escaping="yes"/>
</a>
<xsl:if test="$rss_ExpandFeed = true()">
<xsl:call-template name="RSSMainTemplate.description">
<xsl:with-param name="DescriptionStyle" select="string('display:block;')"/>
<xsl:with-param name="CurrentElement" select="$CurrentElement"/>
</xsl:call-template>
</xsl:if>
<xsl:if test="$rss_ExpandFeed = false()">
<xsl:call-template name="RSSMainTemplate.description">
<xsl:with-param name="DescriptionStyle" select="string('display:none;')"/>
<xsl:with-param name="CurrentElement" select="$CurrentElement"/>
</xsl:call-template>
</xsl:if>
</div>
</xsl:if>
</xsl:for-each>
<div class="description">
<h4 class="ms-rteElement-H4B">
<span class="ms-rteStyle-Emphasis">
<br></br>View More Articles <img alt="more-icon-1.png" src="/BHiveImageGallery/Stock-Images/more-icon-1.png"/>
</span>
<span class="ms-rteStyle-Emphasis"> </span>
</h4>
</div>
</xsl:template>
经过研究,似乎 XML / XSL 不允许您在写入后覆盖 parameter/variable 值。
我不确定我请求的功能是否可行。您可以迭代 5 的倍数并将每个作为其自己的参数存储。但最后决定显示完整列表而不是递增当前显示,因此不需要此答案。
无法覆盖参数值使得这是一个非常棘手的问题