单击时增加 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 &lt;= $rss_FeedLimit)">
    <div class="item link-item" >
      <a href="{concat(&quot;javascript:ToggleItemDescription('&quot;,$CurrentElement,&quot;')&quot;)}" >
        <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&#160;<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 的倍数并将每个作为其自己的参数存储。但最后决定显示完整列表而不是递增当前显示,因此不需要此答案。

无法覆盖参数值使得这是一个非常棘手的问题