繁体   English   中英

如何从primefaces TreeTable中删除emptyMessage

[英]How to remove emptyMessage from primefaces TreeTable

有没有一种方法可以完全删除它,我并不是说要使用emptyMessage =“”,我的意思是像完全不使用它一样,在下面的图像中,我有一个空的树表,它作为树表的头之后它。

带有默认emptyMessage的树表:

默认为emptyMessage的树表

使用emptyMessage =“”:

使用emptyMessage =“”

以上都不是我想要的。

我需要将2个树表分开的灰线消失,这在PrimeFaces 3.5中没有发生,仅在7.0中发生,有没有办法? :)在3.5中,您可能有一个具有null值的树表,现在不可能了,因此在managedbean中,我将其设置为postconstruct和getter的默认值(当它为null时),但这并不重要我正在寻找结果,只是为了让您了解为何以前从未发生过。

正如您对问题的评论所暗示的那样-您可以使用一些简单的CSS并使用emptyMessage=""解决此问题。 这是一个简单的示例,说明如何进行;

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui" xmlns:f="http://java.sun.com/jsf/core">
    <h:head>
        <title>Empty treetable styling</title>
        <style>
            tbody#form\:first_data > tr > td:empty {
                display: none;
            }
        </style>
    </h:head>
    <h:body>
        <h:form id="form">
            <p:treeTable id="first" emptyMessage="" value="#{treeBackingBean.root}">
                 <f:facet name="header">First TreeTable</f:facet>
            </p:treeTable>
            <p:treeTable emptyMessage="" value="#{treeBackingBean.root}">
                <f:facet name="header">Second TreeTable</f:facet>
            </p:treeTable>
        </h:form>       
    </h:body>
</html>

我们结合使用:empty CSS选择器和emptyMessage=""会在结果emptyMessage=""生成一个空的td元素的优势。 然后,我们使用display: none;隐藏元素display: none;

为了完整起见,下面是此示例使用的支持bean;

@Data
@Named
@ViewScoped
public class TreeBackingBean implements Serializable {
    private TreeNode root;

    @PostConstruct
    private void init() {
        root = new DefaultTreeNode("Testing", null);
    }
}

生成的结果树表应类似于下图;

在此处输入图片说明 我们仅在此处设置第一个树形表的样式,但是如您所见,它删除了您在问题中遇到的“空区域”。 为了进行比较,我保留了所有自定义样式规则未触及的第二个树表。

第一个渲染的树形目录树网格(PrimeFaces为第一个树形表生成的代码)看起来像这样-您还可以清楚地看到先前定义的样式规则在哪里匹配;

<table role="treegrid">
    <thead id="form:first_head">
        <tr role="row"></tr>
    </thead>
    <tfoot></tfoot>
    <tbody id="form:first_data" class="ui-treetable-data ui-widget-content">
        <tr class="ui-widget-content ui-treetable-empty-message">
            <td colspan="0"></td>
        </tr>
    </tbody>
</table>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM