0

我有一个 ListBox,我需要将选择的选项数量限制为两个。我使用的是 8.5.2,所以不能使用 SSJS 自定义验证器,但我可以使用 Java 验证器。Java 验证器收到了以逗号分隔的字符串形式的提交值。

如果值包含逗号,则会出现此问题。在这种情况下,如果我用逗号分割提交的值字符串,我的代码会认为选择的选项比实际选择的要多。

当值被写回底层 Notes 文档时,到 getValue() 的转换具有正确映射的值。因此,如果 getSubmittedValue() 是 ListBox 中包含逗号的单个选项,则 getValue() 给我一个元素而不是两个元素。

我的查询是如何重现 getSubmittedValue() 到 getValue() 的转换,以正确计算出选择了多少选项。

4

1 回答 1

0

保罗,你实际上可以控制逗号。该选项有一个显示字符串和一个值。您可以将逗号替换为例如 # ,然后在将其保存回来之前检查是否在显示值的同一位置有一个 # ,然后保存它。

这是更多的工作 - 所以不聪明。

另一种选择:一个一个取出可能的值:

  • 按大小对它们进行排序,最长的优先(这样你就可以避免将一个值包含在另一个值中搞砸(例如“红船”与“船”
  • 将它们从返回字符串中取出(如果删除有效,那么你有一个,当你击中第三个时停止)

....但可能最简单的方法是在一个小的客户端 JavaScript 中计算已检查=已检查的值

于 2013-08-16T07:29:40.617 回答