按省市县做出级联下拉
QQ截图20141205144123.png

2人收藏
5 条回帖
shanghaijg版主2014-12-5 22:45:44
    设计任何东西先得搞明白基本原理,做省市县的级联下拉也是一个道理。我们先来看下下拉的实现方法,云表的下拉提供了固定下拉和动态下拉两种模式,固定下拉比较简单,我们不讨论了,而动态下拉的数据来源是通过获取模板数据来生成的,同时,数据还可以使用参数等进行筛选,这里,我们实现级联下拉的关键是“使用参数进行筛选”。可以想象一下,当我们选择了省的名称以后,你是否想只获取该省下面的所辖市的名称?那么道理很简单,你把这个省的名称作为一个参数传递到市的那个动态下拉里作为参数,这样的话,查询出来的市当然只包含这个省下面的市。然后,市再级联县下拉也是一个道理,我就不重复了。
shanghaijg版主2014-12-5 22:45:47
    设计任何东西先得搞明白基本原理,做省市县的级联下拉也是一个道理。我们先来看下下拉的实现方法,云表的下拉提供了固定下拉和动态下拉两种模式,固定下拉比较简单,我们不讨论了,而动态下拉的数据来源是通过获取模板数据来生成的,同时,数据还可以使用参数等进行筛选,这里,我们实现级联下拉的关键是“使用参数进行筛选”。可以想象一下,当我们选择了省的名称以后,你是否想只获取该省下面的所辖市的名称?那么道理很简单,你把这个省的名称作为一个参数传递到市的那个动态下拉里作为参数,这样的话,查询出来的市当然只包含这个省下面的市。然后,市再级联县下拉也是一个道理,我就不重复了。
雪域飞鹰_nLM8z云豆2014-12-5 23:01:35
非常感谢提点,已经做出来了  其它原理是知道的,就是对工具不熟悉,对云表的学习还有待加强啊
shanghaijg版主2014-12-5 23:13:45
    在具体的设计上,方法很多,如果要实现多级下拉,可以设计一个模板,比如叫行政区划表。里面包含四个字段,比如:名称,编号,父名称,父编号四个字段,然后在数据管理里面的树型及排序中选择自我繁殖的方式,这样设计保存后,先添加省作为第一级,省的父名称由于是最顶级,没有父名称和父编号。然后在总表中选择某个省的记录后添加他的子节点,如此逐级添加,可以任意级。这是第一步,也就是设计数据源。
   第二步,在行政区划表模板上设计数据接口,先设计一个省的动态下拉数据接口,过滤条件是父名称=常量空或者父名称= ""。然后另外设计一个需要实现动态下拉的模板,比如叫客户表,里面有省份、城市、县这三个字段,然后打开该模板的数据管理,在省份这个字段中选择上面省下拉的这个数据接口作为他的数据规范,这样填报的时候选择省份这个字段的单元格,就会出现省的名称下拉。
   第三步,再回到行政区划表模板,设计第二个城市下拉数据接口,这里要注意,因为城市有很多,你想获取的城市是当省份确定后获取跟这个省份绑定的城市,因此,你必须增加一个参数,比如叫父省份,然后在过滤条件中设置过滤条件,比如:”本模板.父名称=自定义参数.父名称",实现数据过滤。
   第四步,再回到客户表里面,打开数据管理,找到城市字段,并选择城市字段的数据规范为行政区划表的城市下拉数据接口,在右边会要求你绑定父省份参数,你选择本表单的省份字段,这样就实现了绑定。
   最后,对客户表进行调试,点击省份出来所有省名称下拉,选择某个省份后,再点击城市字段,就出现了该省份下面的城市下拉了。实现了所谓的级联效果。
it20080808云麦2015-4-12 16:50:48
谢谢,正准备做一个这样的功能,建议纳入系统基本功能中,直接使用。
需要登陆后才可进行回复 登录