0

我想创造这样的东西

<xsl:variable name="content" select="sc:item('{110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9}',.)" />


但是 id 将在用户选择一些项目后确定。那么正确的语法是什么?

我尝试了几个:

<xsl:variable name="content"><xsl:value-of select="bla bla bla" /> </xsl:variable>
<xsl:variable name="content" select="sc:item(&lt;value-of select="bla bla bla" &gt;,.)" />


但没有运气做对。

4

1 回答 1

1

我不确定您要在这里实现什么,但在您的 XSL 中,您需要获取您正在使用的项目的 ID 或路径以传递给 sc:item 函数。你可以使用例如这样的东西:

<xsl:variable name="content" select="sc:item($sc_currentitem/@id,.)" />

或者您可以使用项目列表并像这样遍历它们:

<xsl:for-each select="$itemList/item">
  <xsl:value-of select="@id" />
</xsl:for-each>

编辑:

如果您想从 Treelist 中获取所选项目,您可以选择多个项目,并且 ID 与管道字符连接。您可以使用这样的代码来读取 itemID 并获取相应的项目:

<xsl:for-each select="sc:Split('FieldName',$sc_currentitem)">
   <xsl:variable name="item" select="sc:item(text(), $sc_currentitem)" />
   <xsl:value-of select="$item/@name" /><br />      
</xsl:for-each>

这部分只显示项目的名称,但当然你可以用它做任何你想做的事情。

如果这仍然不起作用,请尝试使用<xsl:value-of select="@id" />for-each 将一些值输出到屏幕,例如所选项目的 ID。

于 2013-02-06T08:30:53.823 回答