2017-05-25 64 views
0

嗨,我想在primfaces数据表中设置选择列的工具提示。作为示例,我使用了下面的代码。在primefaces数据表中为复选框设置工具提示

<p:dataTable id="checkboxDT" var="car" value="#{dtSelectionView.cars6}" 
    selection="#{dtSelectionView.selectedCars}" rowKey="#{car.id}" 
    style="margin-bottom:0"> 

    <p:column id="selectId" selectionMode="multiple" style="width:16px;text-align:center"> 
     <p:tooltip for="selectId" value="tooltip for selection"/> 
    </p:column> 

    <p:column headerText="Id"> 
     <h:outputText id="textId" value="#{car.id}" /> 
     <p:tooltip for="textId" value="tooltip for text"/> 
    </p:column> 


</p:dataTable> 

在上面的代码提示文本生成而不是selection.Already类似的问题,被要求here但在评论中提及的解决方案是行不通的。 请帮我在这里:)

回答

0

<p:column>不会呈现idselectionMode="multiple"

典型<p:column selectionMode="multiple">将呈现以下HTML:

<td class="ui-selection-column" role="gridcell"> 
    <span class="ui-column-title"></span> 
    <div class="ui-chkbox ui-widget"> 
     <div class="ui-helper-hidden-accessible"> 
      <input name="form:dataTableId_checkbox" aria-checked="false" aria-label="" type="checkbox"> 
     </div> 
     <div class="ui-chkbox-box ui-widget ui-corner-all ui-state-default"> 
      <span class="ui-chkbox-icon ui-icon ui-icon-blank ui-c"></span> 
     </div> 
    </div> 
</td> 

鉴于上面的代码中,提示找不到ID附加价值的消息。

为了显示所选列的提示信息,你可以使用PrimeFaces Selector API

示例代码:

<p:dataTable id="checkboxDT" var="car" 
    value="#{dtSelectionView.cars6}" 
    selection="#{dtSelectionView.selectedCars}" rowKey="#{car.id}" 
    style="margin-bottom:0" rowIndexVar="rowIndex"> 

    <p:column selectionMode="multiple" 
     style="width:16px;text-align:center"> 
     <p:tooltip for="@(.ui-datatable tr[role=row][data-ri=#{rowIndex}] td[class=ui-selection-column] div[class~=ui-chkbox])" value="tooltip for selection" /> 
    </p:column> 
</p:dataTable> 

,当鼠标悬停行复选框此示例显示工具提示消息。
你可以玩这个来达到你想要的。