这是我的xPage,其下拉列表(basicContainerNode)是用户名。我只想在该标签旁边添加一个图标。假设我需要将它添加到IMAGE属性,而不是添加到标签。
<xe:this.navbarUtilityLinks>
<xe:basicContainerNode>
<xe:this.label><![CDATA[#{javascript:var currentUserName:NotesName = session.createName(session.getEffectiveUserName());
return "<span class='glyphicon glyphicon glyphicon-user' style='margin-right: 1em;'></span>" + currentUserName.getAbbreviated();}]]>
</xe:this.label>
<xe:this.children>
<xe:loginTreeNode rendered="false"></xe:loginTreeNode>
<xe:basicLeafNode title="Logout" submitValue="appLogout" label="Logout"></xe:basicLeafNode>
</xe:this.children>
</xe:basicContainerNode>
</xe:this.navbarUtilityLinks>
答案 0 :(得分:0)
basicContainerNode标签只能是纯文本。
从标签中删除span-part并将以下事件添加到XPage:
<xp:eventHandler
event="onClientLoad"
submit="false">
<xp:this.script><![CDATA[dojo.query('.dropdown .dropdown-toggle').forEach(function(e){
var spanNode = document.createElement("span");
spanNode.className = 'glyphicon glyphicon-user';
spanNode.style.marginRight='1em';
e.insertBefore(spanNode, e.firstChild);
})]]></xp:this.script>
</xp:eventHandler>
它搜索课程&#34;下拉&#34; +&#34;下拉切换&#34;并插入带有类&#34; glyphicon glyphicon-user&#34;的span元素。和风格&#34; margin-right:1em&#34;。
这样您就可以在用户名之前获得用户图标: