Jsf 2 如何在EL中执行空签入以有条件地显示p:对话框?
我有两个Jsf 2 如何在EL中执行空签入以有条件地显示p:对话框?,jsf-2,primefaces,el,Jsf 2,Primefaces,El,我有两个s,根据bean属性的条件,我想显示其中一个。我使用了以下代码 onclick="#{empty groupBean.selectionGroup?dialog_empty.show():groupDialog.show()}" 但它不起作用,因为它说EL表达式中有一个错误。我不确定错误在哪里。我这样做是否正确?您将JavaScript代码视为EL表达式的一部分。这只会导致语法错误,因为EL无法在范围中找到{dialog\u empty}或{groupDialog}。您必须通过引用Ja
s,根据bean属性的条件,我想显示其中一个。我使用了以下代码
onclick="#{empty groupBean.selectionGroup?dialog_empty.show():groupDialog.show()}"
但它不起作用,因为它说EL表达式中有一个错误。我不确定错误在哪里。我这样做是否正确?您将JavaScript代码视为EL表达式的一部分。这只会导致语法错误,因为EL无法在范围中找到
{dialog\u empty}
或{groupDialog}
。您必须通过引用JavaScript代码将其视为字符串,因为它们最终需要按原样写入HTML响应:
onclick="#{empty groupBean.selectionGroup ? 'dialog_empty.show()' : 'groupDialog.show()'}"
在这种情况下,错误很明显,只要看一下代码就可以发现,但是在以后关于错误的问题中,您应该真正地复制粘贴整个错误消息,因为它们通常已经包含了答案。谢谢BalusC。实际上,控制台中没有错误。除此按钮外,应用程序也运行良好。如何启用错误查看。您自己说过“它说EL表达式中存在错误”?所以这里有一个“错误”。或者这就是你的全部?这就是我的全部。应用程序运行良好。没有例外。即使现在我也能看到一个警告,所以我忽略了它。以下是警告
说明资源路径位置类型此空表达式的计算结果始终为false。只有字符串、映射、数组和集合对于空操作符组_detail有意义的值。xhtml/mint_v1/WebContent/pages line 36 Facelet Validator
啊,那一定是一个ajax请求。也许PrimeFaces正在压制它。抱歉,我没有广泛使用PrimeFaces,我无法详细说明如何配置它。至少,你的具体问题现在已经解决了,对吗?:)