将参数值传递给另一个参数 - SharePoint Designer

时间:2014-06-16 21:21:37

标签: sharepoint sharepoint-designer

我已经创建了ASPX页面,并在其上使用了数据视图webpart。我试图根据没有域的用户登录信息过滤列表项。

我创建了一个参数(LOGON)并分配了服务器变量LOGON_USER(这给了我的用户名为" Domain \ username")

我基本上想要根据"用户名"过滤列表项(在列表中的名为user_names的列/字段)。只是而不是用它来检查域名。

在过滤时,我只能将列表项字段设置为等于参数。我正在考虑创建另一个参数并将该参数的值指定为substring-after($ Logon,' \')但我无法在SharePoint Designer中执行此操作。我也是通过xslt过滤来尝试它,但是在创建数据源之后也没有这样做。

1 个答案:

答案 0 :(得分:0)

使用javascript获取用户名或修改用户名,然后再将其作为参数发送到URL。然后可以正确过滤DVWP数据源。

或者,使用XSLT过滤,确实有效。你只需要知道把它放在哪里。请记住,使用XSLT过滤,查询将返回所有用户的数据,过滤器只会影响呈现。

<xsl:template name="dvt_1">
    <xsl:variable name="dvt_StyleName">Table</xsl:variable>
    <xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row[@UserName = $Logon]" /> 

调整以反映您的字段名称。