Checkbox XPages复选框组-绑定到hashmap

Checkbox XPages复选框组-绑定到hashmap,checkbox,hashmap,xpages,Checkbox,Hashmap,Xpages,我有一个Hashmap(sessionScope),其中包含了来宾及其unid的姓名 例如,在下面的hashmap中,Carmen Adamson是关键。在她的小屋里,客人的价值观是:卡门·亚当森和斯蒂芬·亚当森。每个复选框字段的别名是Guest UNID,值之间用“~”分隔 卡门·亚当森·斯蒂芬·亚当森| 1C145A291A5DFEC188257E200071402E~卡门·亚当森| 813B80C332EC192188257E2000714030 有人能帮我提供一些示例代码,说明如何将复选

我有一个Hashmap(sessionScope),其中包含了来宾及其unid的姓名

例如,在下面的hashmap中,Carmen Adamson是关键。在她的小屋里,客人的价值观是:卡门·亚当森和斯蒂芬·亚当森。每个复选框字段的别名是Guest UNID,值之间用“~”分隔

卡门·亚当森·斯蒂芬·亚当森| 1C145A291A5DFEC188257E200071402E~卡门·亚当森| 813B80C332EC192188257E2000714030

有人能帮我提供一些示例代码,说明如何将复选框组字段直接绑定到hashmap吗

非常感谢


Dan

Dan,您当然可以这样做,但必须使用java来完成。您可以编写一个方法来传递hashmap并返回带有数据和标签的SelectItem对象。我可能错了,但我不认为这可以通过SSJS实现

看看这个相关的问题,它有一个来自Mark Leusink的极好的答案,并包含一个代码示例

这个例子来自我的博客,它提供了使用java创建SelectItems的更多细节。我的示例是一个组合框,但复选框也使用SelectItem。上面的问题是我写作的基础


我能想出来:

<xp:checkBoxGroup id="checkBoxGroup1">
<xp:selectItems>
<xp:this.value><![CDATA[#{javascript:var iterator:java.util.Iterator =     sessionScope.guestlistArray.entrySet().iterator();
while (iterator.hasNext()) { 
var entry = iterator.next();
var guestlist = entry.getValue();
}
@Explode(guestlist,"~");}]]></xp:this.value>
</xp:selectItems>
</xp:checkBoxGroup>


谢谢你,史蒂夫!我希望不必走Java路线。如果这是唯一的方法,我会的。Steve,现在我已经在SSJS中使用了它,我也会尝试找时间研究Java选项。