ShowTable of Contents
Each component on a XPage have the "visible" property which can be computed. If computed, your JS should return eithertrue orfalse or a empty string (same asfalse) or "1" (same astrue).
HideWhen based on a user role
Show the element if user has the role [role].
var v:Array = database.queryAccessRoles(session.getEffectiveUserName());
@IsMember("[role]", v)
Set visible for a component with JavaScript
var elem:javax.faces.component.UIComponent = getComponent("contentPopup");
elem.setRendered(true);
Make a field required when emulating computed when composed
1) Set visible property to true
2) create a computed field with the formula: getComponent(Id of above field).getValue()
3) select source tab and enter the <div> tag before and </div> tag after your field code as below, but not to include your computed field
<div style="display: none;">
<xp:inputText
id=
value=
required=
<xp:this.validators>
<xp:validateRequired
message=
</xp:validateRequired>
</xp:this.validators>
</xp:inputText>
</div>
The reason for doing it this way is because any other way the required property doesn't evaluate to true
Hope this helps other XPage newbies
Dwain A Wuerfel