【问题标题】:How to add an empty element in a JSF panelGrid?如何在 JSF panelGrid 中添加一个空元素?
【发布时间】:2015-04-21 01:42:03
【问题描述】:

如何在 JSF panelGrid 中添加一个空元素?

这是我的全桌:

<h:panelGrid columns="2">
    <h:outputLabel value="row1"/>
    <h:outputLabel value="row2"/>

    <h:outputLabel value="row1"/>
    <h:outputLabel value="row2"/>

    <h:outputLabel value="row1"/>
    <h:outputLabel value="row2"/>
</h:panelGrid>

如何添加空元素?建议的方法是什么? (添加一个空的输出标签?这感觉不正确。)

<h:panelGrid columns="2">
    <h:outputLabel value="row1"/>
    <h:outputLabel value="row2"/>

    <!-- This need to be emtpy -->
    <h:outputLabel value="row2"/>

    <h:outputLabel value="row1"/>
    <h:outputLabel value="row2"/>
</h:panelGrid>

【问题讨论】:

  • “空”是否意味着只有它的value 应该保持为空?如果是这种情况,为什么&lt;h:outputLabel value=""/&gt; 不够呢?出于什么目的需要一个空的&lt;h:outputLabel&gt;?它应该和它根本不存在一样好。不是吗?
  • 奥拉!添加 确实有效!这是最佳做法吗?请回答。出于布局原因,我需要一个空单元格。
  • 这篇文章的所有其他潜在读者应该已经准确理解了这个问题,但我还没有理解 - 一个愚蠢的想法:)

标签: jsf datagrid components element


【解决方案1】:

如果你不需要动态改变单元格的内容,只需要一个空单元格,可能使用比添加组件效率更高 到页面结构:

<h:panelGrid columns="2">
  <h:outputLabel value="row1"/>
  <h:outputLabel value="row2"/>

  <h:outputText/>
  <h:outputLabel value="row2"/>

  <h:outputLabel value="row1"/>
  <h:outputLabel value="row2"/>
</h:panelGrid>

【讨论】:

    【解决方案2】:

    使用空的&lt;h:panelGroup&gt;

    <h:panelGrid columns="2">
        <h:outputLabel value="row1"/>
        <h:outputLabel value="row2"/>
    
        <h:panelGroup />
        <h:outputLabel value="row2"/>
    
        <h:outputLabel value="row1"/>
        <h:outputLabel value="row2"/>
    </h:panelGrid>
    

    另见:


    与具体问题无关,您是否非常清楚何时应该使用&lt;h:outputLabel&gt; 而不是&lt;h:outputText&gt;?如果没有,请仔细阅读Purpose of the h:outputLabel and its "for" attribute

    【讨论】:

    猜你喜欢
    • 2013-04-05
    • 1970-01-01
    • 2011-06-21
    • 2011-01-15
    • 2012-05-04
    • 2011-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多