zoukankan      html  css  js  c++  java
  • 利用InfoPath实现SharePoint Server 2013列表的级联选择(Cascading Drop Down List)

    最近在利用SharePoint Server 2013的列表组织和存储数据,发现SharePoint列表原始不支持级联选择的功能。

    谷歌百度一通以后,发现了很多通过代码实现的方案,利用第三方的插件spservices的http://spservices.codeplex.com/releases/view/119578,或者自己编段代码的http://www.cnblogs.com/jianyus/p/3812758.html(JQuery+JavaScript),但觉得都不太理想。最后发现可以利用InfoPath设计列表,不用编写一行代码,就可以轻松实现字段之间的级联互动。下面介绍一下这个方案的具体操作:

    1. 配置SharePoint Server的State Service(状态服务)

    如果需要利用InfoPath来设计菜单,必须启用State Service,否则列表无法正确打开。

    以SharePoint场管理员身份打开管理中心,并选择配置向导

    clip_image002

    Figure 1

    clip_image004

    Figure 1

    clip_image006

    Figure 3

    clip_image008

    Figure 4

    2. 使用InfoPath配置级联选择

    2.1 首先创建2个父子列表,用以保存级联选项的来源。

    这里我以中国的省市为例,创建一个省市的父列表,再创建一个地区的字列表,如下图

    image 

    Figure 5

    2.2 再使用InfoPath创建/便捷一个示例的列表,需要引用上面的两个父子列表

    在列表中添加两个下拉列表项,分别绑定省市/地区字段,具体操作如下

    image

    Figure 6 - 绑定省市字段

    image

    Figure 7 - 绑定地市字段

    image

    Figure 8 - 设置筛选

    image

    Figure 9 - 设置筛选条件时,一定要注意选择“主”里面的字段,否则没有级联效果的

    设置完成以后,通过InfoPath的预览功能,就可以验证级联效果了,然后发布到SharePoint Server中。

    image

    Figure 10 - 预览效果

    2.3 配置规则,优化级联选择

    通过上面配置,基本实现了级联功能。但是在选择了子项(地市)以后,如果再切换省市,你会发现子项没有清空。所以还需要配置父字段(省市)的规则来优化级联功能,实现切换父字段的值时,自动清空子项的值。

    image

    Figure 11 - 为父字段设置规则

    image

    Figure 12 - 设置域值

    image

    Figure 13 - 设置地市字段的值为空

     

    通过上述设置后,基本上实现了一个比较完美的级联选择功能。

    http://www.cnblogs.com/danzhang 张洪君

     

    2015-3-23补充:

    1. 在InfoPath中创建下列框的时候,必须选择查找类型,不能选择“手动输入选项”,如下图:

    image

    2. 在设置字段属性时,必须选择SharePoint列表节点,不要选择具体的字段名称;然后再设置“值”和”显示名称“中设置对应的字段,如下图:

    image

  • 相关阅读:
    1>/dev/null 2>&1的含义
    rpm常用命令及rpm参数介绍
    linux按位运算
    关于比较运算符的一个例子
    js屏蔽效果
    jquery异步提交无刷新
    常用js验证
    获取输入字符的首字母(中文为拼音首字母)
    SQL查询合并字符串
    获取鼠标点击的坐标处理
  • 原文地址:https://www.cnblogs.com/danzhang/p/4343412.html
Copyright © 2011-2022 走看看