xpages - 在 SSJS 中使用表达式语言

标签 xpages xpages-ssjs

在 EL 中引用 bean 属性 (id) 时,我使用 #{bean.id}

我现在需要在该数据前面加上一些静态文本。我通过使用 SSJS 来做到这一点: "sometext"+ bean.getId();

有没有办法可以在 SSJS 中使用 EL 表示法?例如 "sometext"+ #{bean.id};

我意识到在这个例子中它并没有太大的不同,但是当请求更复杂或嵌套的属性时,我认为它会派上用场。

最佳答案

虽然理论上你可以在 SSJS block 中执行任意 EL,但它太丑了,不值得做(可能类似于 facesContext.getApplication().createValueBinding("#{bean.id}").getValue(facesContext) )。

但是,您可以在您想要做的事情符合需要时在同一个属性中混合绑定(bind)类型。例如:<xp:text value="#{javascript:doFoo()} some other text #{bean.id}"/> .这将适合您问题的具体情况,但可能不适合实践中的更大需求。

适用于其他情况的相关技术是使用加载时 SSJS(或其他)绑定(bind)来生成运行时 EL 绑定(bind)。例如:<xp:fileDownload value="${javascript:'#{' + compositeData.dataSource + '.' + compositeData.fieldName + '}'}"/> .同样,这是根据情况而定的,但可能很有用。

关于xpages - 在 SSJS 中使用表达式语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32571787/

相关文章:

regex - 通过正则表达式替换字符串中的多个字符串

javascript - 将响应显示为 XPages 父文档上的嵌入 View

Xpages - 使用 Dojo 模块

XPage XSP.partialRefresh对 View 容器控件产生奇怪的效果

twitter-bootstrap-3 - 将 SSJS 操作添加到引导药丸中

java - Xpages 脱离服务器端缓存

javascript - 如何获取 dojo 图表的句柄以调整它的大小?

javascript - XPages csjs 将变量传递给函数?

javascript - 如何使用 POI 4 Xpages 导出 JavaScript 数组?

xpages - 有人在 nsf 中使用 javascript 原型(prototype)后,如何清理 Domino 服务器中的 SSJS?