天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 3050|回复: 0

[表单-复选框&下拉框&单选框&左右选择&智能提示搜索] 下拉框选项能否筛选【下拉框数据联动】

[复制链接]
suyisene 发表于 2011-11-29 15:08:02 | 显示全部楼层 |阅读模式
Q:下拉框选项能否筛选
有一个表单:

14.png
例如:如果A选“喷绘”,B只有“打孔”和“不打孔”选项,跟“喷绘”无关的“A3、A4”不显示,如何实现?
A:可以在脚本里面实现的;
A选中“刷新”,B选中“重计算”。B的选项根据A取到的值再决定生成什么选项。

如:
A选项:
var opts = createOptions();
opts.add("喷绘","喷绘");//添加选项
opts.add("其它","其它");
opts;

B选项:
var value = getItemValueAsString("A");
var opts = createOptions();
if ("喷绘".equals(value)){
      opts.add("打孔","打孔");
      opts.add("不打孔","不打孔");
}else{
      opts.add("A3","A3");
      opts.add("A4","A4");
}
opts;

也可以根据多个字段的做的,如下:
通过表单做一个数据字典表(printer_type),数据从字典表中获取。
type    name      value
AA       喷绘      喷绘
AA       单页      单页
喷绘    打孔      打孔
喷绘   不打孔    不打孔
单页    A3           A3
单页    A4           A4

A选中“刷新”,B选中“重计算”。B的选项根据A取到的值再决定生成什么选项。

如:
A选项:
var opts = createOptions();//新建一个选项
var dql = "$formname='printer_type' and type='AA'";//dql语句
var datas = queryByDQL(dql);//查询
for (var it = datas.iterator();datas!=null && it.hasNext();){
      var doc = it.next();
      var name = doc.getItemValueAsString("name");
      var value = doc.getItemValueAsString("value");
      opts.add(name,value);
}
opts;

B选项:
var value = getItemValueAsString("A");
var opts = createOptions();
var dql = "$formname='printer_type' and type='"+value+"'";
var datas = queryByDQL(dql);
for (var it = datas.iterator();datas!=null && it.hasNext();){
      var doc = it.next();
      var name = doc.getItemValueAsString("name");
      var value = doc.getItemValueAsString("value");
      opts.add(name,value);
}
opts;

摘自hzcyl提问,原帖子链接:
http://www.teemlink.com/bbs/view ... 26amp%3Btypeid%3D52

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 06:48

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表