如何设置组合框值?
How to set combobox value?
我需要根据登录用户来确定菜单中显示的值。
如果菜单中有 Ariel、Austin、Jennifer 和 Ryan,当我以 Ariel 身份登录时,菜单将不会显示 Ariel,只有 Austin、Jennifer 和 Ryan。
如何实现这个要求?
enter image description here
enter image description here
最简单的方法是将可用选择绑定到 Java脚本函数或托管 bean。它 returns 一个数组 (JS) 或集合 (Java)。在函数内部,您可以根据用户
执行必要的操作
获取当前登录用户名
var username = session.createName(session.getEffectiveUserName()).getCommon()
并从用户列表中删除该名称。
示例:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:comboBox id="comboBox1">
<xp:selectItems>
<xp:this.value><![CDATA[#{javascript:
var names = new java.util.ArrayList();
names.add("Ariel A");
names.add("Austin B");
names.add("Jennifer C");
names.add("Ryan D");
var username = session.createName(session.getEffectiveUserName()).getCommon();
names.remove(username);
return names;
}]]></xp:this.value>
</xp:selectItems>
</xp:comboBox>
</xp:view>
我需要根据登录用户来确定菜单中显示的值。 如果菜单中有 Ariel、Austin、Jennifer 和 Ryan,当我以 Ariel 身份登录时,菜单将不会显示 Ariel,只有 Austin、Jennifer 和 Ryan。 如何实现这个要求?
enter image description here
enter image description here
最简单的方法是将可用选择绑定到 Java脚本函数或托管 bean。它 returns 一个数组 (JS) 或集合 (Java)。在函数内部,您可以根据用户
执行必要的操作获取当前登录用户名
var username = session.createName(session.getEffectiveUserName()).getCommon()
并从用户列表中删除该名称。
示例:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:comboBox id="comboBox1">
<xp:selectItems>
<xp:this.value><![CDATA[#{javascript:
var names = new java.util.ArrayList();
names.add("Ariel A");
names.add("Austin B");
names.add("Jennifer C");
names.add("Ryan D");
var username = session.createName(session.getEffectiveUserName()).getCommon();
names.remove(username);
return names;
}]]></xp:this.value>
</xp:selectItems>
</xp:comboBox>
</xp:view>