听雨 发表于 2024-6-10 20:18:22

组合框或EL选择器如何根据条件自动改变显示字段?

本帖最后由 听雨 于 2024-6-10 20:20 编辑

目前有这样的需求(组合框选项多语言显示):
关于组合框或者EL选择器,如果使用自定义选项,是可以设置显示文本的多语言显示。
但如果绑定了数据表,显示文本就只能选择一个字段来显示。
自定义选项不方便,如果选项多每个都需要设置,也不利于后期的维护(会有选项的增加或删除的需求)。

绑定数据表情况下,在表中可以设置:同一个ID,一个值字段,多个显示文本字段。然后系统根据当前语言自动匹配显示哪个文本字段。
请问大佬这个有实现的方法吗?
注:要一个值字段对应多个显示文本字段哈。

追风 发表于 2024-6-10 20:18:23

1.写一个公式字段将两种拼接起来作为一个字段来展示是否满足需求呢?
2.或者做一个组件,组件里面有两个EL选择器。一个用来展示一个字段,另一个用来展示另外一个字段。用一个参数来进行切换。

Joe.xu 发表于 2024-6-11 10:08:39

本帖最后由 Joe.xu 于 2024-6-12 09:06 编辑

楼主这样试试,在表中加一个字段来区分语言,同一个ID有多行数据对应不同的语言,
然后组合框根据语言来过滤

听雨 发表于 2024-6-11 11:12:50

追风 发表于 2024-6-11 08:05
1.写一个公式字段将两种拼接起来作为一个字段来展示是否满足需求呢?
2.或者做一个组件,组件里面有两个EL ...

方法1:拼接的话文字过长,显示效果不好。

方法2:组件确实可以实现效果。但是出现一个问题:
设置了组件属性为当前语言,但是页面加载传参时,属性值设置当前语言关键字(%ActiveLanguage%)无效,默认值设置它也无效。只能通过单元格设置该关键字并引用。这样导致我需要每个页面都得设置一个单元格放置这个关键字并引用,比较麻烦。请问有什么其它方式将这个关键字的值传进去呢?

听雨 发表于 2024-6-11 11:22:37

Joe.xu 发表于 2024-6-11 10:08
楼主这样试试,在表中加一个字段来区分语言,同一个ID有多行数据对应不同的语言,
然后组合框更具语言来过 ...

是要设置主子表吗?主要是要实现同一个ID值,不同的当前语言对应不同的显示文字。

听雨 发表于 2024-6-11 11:36:29

附个demo,大佬帮看下

追风 发表于 2024-6-11 11:36:38

听雨 发表于 2024-6-11 11:12
方法1:拼接的话文字过长,显示效果不好。

方法2:组件确实可以实现效果。但是出现一个问题:


还是公式属性传进去

听雨 发表于 2024-6-11 11:53:57

追风 发表于 2024-6-11 11:36
还是公式属性传进去

公式字段也不行,就是获取不到关键字的值。上面我传了个demo,麻烦大佬帮看下谢谢。

听雨 发表于 2024-6-11 11:58:44

Joe.xu 发表于 2024-6-11 10:08
楼主这样试试,在表中加一个字段来区分语言,同一个ID有多行数据对应不同的语言,
然后组合框更具语言来过 ...

主子表确实可以实现。也可以通过查询当前语言关键字来筛选。
值作为主表,语言和显示文字作为子表。子表维护就需要表格编辑,请问有办法在新增子表内容时一键插入两行么(一行中文对应文字,一行英文对应文字),且语言列也同时默认一个时中文,一个是英文?

听雨 发表于 2024-6-11 13:02:14

听雨 发表于 2024-6-11 11:58
主子表确实可以实现。也可以通过查询当前语言关键字来筛选。
值作为主表,语言和显示文字作为子表。子表 ...

插入两行实现了。页面加载时(判断新增),设置2个表格操作插入命令就可以了。
页: [1] 2
查看完整版本: 组合框或EL选择器如何根据条件自动改变显示字段?