【问题标题】:Conditionally set an attribute within JSF component tag有条件地在 JSF 组件标签中设置一个属性
【发布时间】:2012-04-27 22:55:53
【问题描述】:

我需要根据来自支持 bean 的布尔值有条件地在 JSF 组件标签中设置一个属性。我该怎么做呢?

如果布尔值为真,则应在组件标签中添加/指定属性,或者如果布尔值为假,则不应为该组件设置该属性。

【问题讨论】:

  • 你为什么需要那个?能给我举个例子吗 ?正如@JMelnik 所说,您唯一能做的就是在服务器端添加。我只是想知道为什么有人需要这个。对我来说唯一合理的事情是有条件地设置列是否应该有排序/过滤器。

标签: java jsf jsf-2 el


【解决方案1】:

您可以:

  • 如果值为布尔值 - 在 bean 中定义所需的默认值并将其分配给 JSF 组件的属性。例如rendered="#{bean.componentRendered}"
  • 如果属性有更多选项(不是布尔值) - 将您的组件绑定到支持 bean 并在服务器端初始化它和所需的属性。例如binding="#{bean.component}"

我不确定是否有可能实现我在第二个选项中提到的。如果不可能,请编辑我的答案。

【讨论】:

    【解决方案2】:

    虽然你的问题对我来说不是很清楚。但我还是会尝试回答这个问题

    1)如果您必须在文本字段中填充一个值(假设),那么您可以在 bean 类的构造函数中设置该值,在构造函数中您可以检查布尔值并相应地设置该值。

    2)如果不想显示该字段,则可以根据要求将渲染字段设置为false。

    请详细说明,以便我们为您提供更多帮助

    【讨论】:

      猜你喜欢
      • 2022-11-18
      • 1970-01-01
      • 1970-01-01
      • 2017-05-28
      • 2015-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-19
      相关资源
      最近更新 更多