之前碰到的问题《SharePoint 通过下拉框来筛选列表 》经过同事的指导解决了。。
哈哈哈。。
首先我们选回到刚才的筛选条件那边
把这边的条件全部清楚掉,完了就跟下面的一样。这个时候点击确定退出。再重新进来。
点击编辑进入高级条件这边。
1 [
2 (
3 contains(@Item_x0020_Classification,$ItemClassification)
4 and contains(@Manufacturer,$Manufacturer)
5 )
6 or
7 (
8 contains($ItemClassification,'0')
9 and contains(@Manufacturer,$Manufacturer)
10 )
11 or
12 (
13 contains(@Item_x0020_Classification,$ItemClassification)
14 and contains($Manufacturer,'0')
15
16 )
17 ]
2 (
3 contains(@Item_x0020_Classification,$ItemClassification)
4 and contains(@Manufacturer,$Manufacturer)
5 )
6 or
7 (
8 contains($ItemClassification,'0')
9 and contains(@Manufacturer,$Manufacturer)
10 )
11 or
12 (
13 contains(@Item_x0020_Classification,$ItemClassification)
14 and contains($Manufacturer,'0')
15
16 )
17 ]
这边对这个代码解释下:
@XXX:就是我们列表里面筛选的字段名
$XXX;就是我们的参数名
contains(字符串,子字符串) :如果子符串参数出现在字符串参数中,则返回True,否则返回False
我们这边的筛选就是就当我们的参数跟列表字段里的值一样的时候这个就是真的。筛选就成功
contains($ItemClassification,'0') -- 我们在下拉框里定义,他如果选择为第一项“选择一个...”这一项的时候它的值为‘0’
所以当这个下拉框没有选中的话这个条件是成立的。。
用这个方法还有一个比较麻烦的地方。当筛选的条件比较多的话。比如说我有5个下拉框来筛选的话。。这个条件有的写的。。
目前我的方法。还有没有其它方法??
-----------
更新
-----------
将上面的条件代码改成这样子的话。下拉框再多也不要写太多代码
1 [
2 (
3 contains(@Item_x0020_Classification,$ItemClassification)
4 or contains($ItemClassification,'0')
5 )
6 and
7 (
8 contains(@Manufacturer,$Manufacturer)
9 or contains($Manufacturer,'0')
10 )
11 ]
12
2 (
3 contains(@Item_x0020_Classification,$ItemClassification)
4 or contains($ItemClassification,'0')
5 )
6 and
7 (
8 contains(@Manufacturer,$Manufacturer)
9 or contains($Manufacturer,'0')
10 )
11 ]
12
添加一个下拉框就再添加一个AND就行了。。