Primefaces 5.1显示每行没有扩展名的数据表的单个单元格上的工具提示

时间:2017-01-07 18:36:53

标签: primefaces jsf-2.2

我遇到了单个单元格列上的primefaces和工具提示的问题。我无法使用它,所以我搜索了网页,发现很多回答like this one。第一个答案没有解决问题,事实上什么都没做,第二个答案在运行时给了我错误,告诉我它无法在页面中找到righ对象。

那么,我怎样才能在每个表的单个单元格上使用工具提示? 我使用的是primefaces 5.1,jsf 2.2,java 1.6。

3 个答案:

答案 0 :(得分:0)

尽管有很多答案建议你使用primefaces扩展,但你要做的唯一事情是看你的工具提示是这样使用primefaces:

<p:tooltip id="toolTipGrow" value="#{row.property}" shared="true" for="idField" showEffect="clip" position="top"/>

其中 idField 是您要查看工具提示的ID, row.property 是您要在其中显示的值。

事情现在变得简单了。这是数据表的一个例子:

<p:dataTable var="row" value="#{....}" styleClass="myTable">
    <p:column headerText="Header 2">
        <h:outputText value="#{row.value2}" id="idField" />
        <p:tooltip id="toolTipGrow" value="#{row.property}" shared="true" for="idField" showEffect="clip" position="top"/> 
</p:column>
</p:dataTable>

我希望这会有所帮助。

最好的问候

答案 1 :(得分:0)

是的,可能。见..

<p:column>
    <f:facet name="header"> 
        <h:outputText
            id="header"
            value="Header"
        />  
        <p:tooltip 
            for="header"
            showEffect="fade"
            hideEffect="fade"
        >
            <!-- content of tooltip for header -->
        </p:tooltip>
    </f:facet>

    <h:outputText
        id="col"
        value="#{object.valueA}"
    />

    <p:tooltip 
        for="col"
        showEffect="fade"
        hideEffect="fade"
    >
    <!-- content of tooltip for cell -->
    </p:tooltip>
</p:column>

答案 2 :(得分:0)

在我的场景中,我所有的数据都放在h:outputText元素内的单元格中。 在这种情况下,您可以使用title属性。

<p:column>
    <h:outputText value="#{row.data}" title="#{row.data}"/>
</p:column>