【发布时间】:2021-06-15 17:23:18
【问题描述】:
在我的 JSF 2.1 项目中,我定义了一个自定义标记文件,其中包含一个 h:inputText 元素。此元素可能包含也可能不包含 binding 属性 - 取决于自定义元素的传递参数。
formInput.xhtml 示例(摘录):
<h:inputText id="#{id}" value="#{value}">
<c:if test="#{not empty binding}">
<f:attribute name="binding" value="#{binding}"/>
</c:if>
</h:inputText>
其他文件的用法:
<e:formInput id="test" value="#{testBean.myValue}" binding="#{testBean.myBinding}"/>
不幸的是,这不起作用。 #{not empty binding} 解析为 false 并且未应用绑定。
但是,在没有条件的情况下定义binding 属性确实有效。
示例:
<h:inputText id="#{id}" value="#{value}">
<f:attribute name="binding" value="#{binding}"/>
</h:inputText>
在这种情况下,绑定应用正确。
有人知道如何有条件地设置绑定吗?
提前致谢!
【问题讨论】:
-
这个运气好吗?