如何在EL中检查以有条件地显示p:对话框?

时间:2011-10-24 14:15:29

标签: jsf-2 primefaces el

我有两个<p:dailog>,根据bean属性的条件,我想显示其中一个。我使用了以下代码

onclick="#{empty groupBean.selectionGroup?dialog_empty.show():groupDialog.show()}"

但它不起作用,因为它表示EL表达式中存在错误。我不确定错误在哪里。我这样做的方法是否正确?

1 个答案:

答案 0 :(得分:2)

您将JavaScript代码视为EL表达式的一部分。这只会导致语法错误,因为EL在范围内找不到#{dialog_empty}#{groupDialog}。您必须通过引用将JavaScript代码视为字符串,因为它们最终需要按原样写入HTML响应:

onclick="#{empty groupBean.selectionGroup ? 'dialog_empty.show()' : 'groupDialog.show()'}"