Sharepoint XSL 数据 View 查询字符串过滤

标签 sharepoint list dataview

假设我有一个名为事件的列表。

使用 SP Designer,我可以将 Web 部件添加到页面,选择事件列表,并且具有标准共享点控件和列筛选的数据网格将添加到页面,类似于任何列表的“allitems.aspx” View .

列过滤的好处是它使用 GET 请求,使用查询字符串,例如:

?FilterField1=位置&FilterValue1=usa&FilterField2=qtr&FilterValue2=q2

这使我能够构建网址并将其发送给人们,向他们显示预先过滤的数据。当不存在查询字符串时,将显示所有项目。

如何使用 xsl 数据 View 实现此目的?对这些内容的过滤是通过 POST 请求完成的(即 URL 永远不会更改或附加查询字符串)。我知道我可以设置一个查询字符串参数,然后根据该参数进行过滤,但是如果查询字符串不存在,则不会显示任何项目,因为它总是寻找查询字符串进行过滤。

有没有办法让 xsl 数据 View 在 GET 请求模式下工作?

最佳答案

是的,您可以做的是添加条件 xslt,如果存储查询字符串值的 xslt 参数为空,则显示所有结果,否则根据查询字符串的 xsl 参数对其进行过滤

<xsl:choose>
<xsl:when test="$qparam1=''">
<xsl:call-template name="allitem" />
</xsl:when>
<xsl:when test="$qparam1!=''">
<xsl:call-template name="filterdeitem">
<xsl:param filter1 = $qparam1/>
</xsl:call-template>
</xsl:when>
</xsl:choose>

关于Sharepoint XSL 数据 View 查询字符串过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5413475/

相关文章:

sharepoint - 下拉字段 - 第一项应为空

java - 多个 NULL 添加到 Java 中的列表中

php - 使用php获取不带扩展名的文件和文件名列表

javascript - Float32Array 和 DataView 之间的差异

c# - 为什么 HttpContext.Current.Profile 为 NULL?它如何获得值(value)?

javascript - 通过javascript获取两个字符串之间的字符串值

python - 列表的正常循环和使用切片之间的区别?

javascript - 如何动态地重新加载任何 slickgrid 数据 View ?

c# - 过滤DataTable中的空字符串

python - 如何通过传递用户名和密码登录共享点?