我刚刚开始将xe:applicationLayout用于应用程序。我在“Place Bar”中添加了“基本节点”。我想在点击节点/按钮上运行一些服务器端JavaScript代码。我曾尝试计算基本节点的onClick属性,但这没有做任何事情,看起来onClick只运行客户端JavaScript。
是否有可以运行SSJS的属性或节点?谢谢你的帮助。
答案 0 :(得分:2)
设置节点的submittedValue属性。 (该过程对于应用程序布局中的所有位置都是相同的;这是banner.ApplicationLinks的示例代码段)
<xe:this.bannerApplicationLinks>
<xe:basicContainerNode styleClass="firstApplication" label="${langString_CRM['CREATE']}">
<xe:this.children>
<xe:basicLeafNode submitValue="company_new"
然后向您的页面添加一个事件处理程序,并根据提交的值运行您的SSJS
<xp:eventHandler event="onItemClick" submit="true"
refreshMode="partial" disableValidators="true" refreshId="cois_application_layout"
execMode="partial">
<xp:this.action><![CDATA[#{javascript:
var submittedValue=context.getSubmittedValue();
// evaluate the submitted value here ...
答案 1 :(得分:1)
不是最好的版本,但它有效。 添加按钮到XPage然后使用css隐藏。 在您的应用程序布局中添加一个客户端脚本,该脚本使用获取按钮的句柄 dojo.byId并对它们执行click()。然后,当您单击不同的按钮时,可以轻松更新不同的面板。