【问题标题】:How can I show watermark in data table filter?如何在数据表过滤器中显示水印?
【发布时间】:2013-03-25 10:59:20
【问题描述】:

我有一个带有过滤器的<p:column>。 我想用水印显示它。 这是我尝试过的:

<p:column id="carType" filterBy="#{car.carType}" >
    <h:outputText value="#{car.carType}" />
    <p:watermark forElement="carType"
                 value="Car Type"/>
</p:column>

但是,这并没有出现。我怎样才能做到这一点?

【问题讨论】:

    标签: jsf filter primefaces


    【解决方案1】:

    试试这个

         <h:form id="parametersListForm">      
    
        <p:dataTable id="parameteresList" value="#{parameterController.lstParameter}"
                     var="parameters" styleClass="tnt-main-table"> 
    
        <p:column id="columnRefType" filterBy="#{parameters.beRefType}" >
            <h:outputText value="#{parameters.beRefType}" />
            <p:watermark forElement="parametersListForm:parameteresList:columnRefType:filter"
                         value="#{msgs['parameters.beRefType.label']}"/>  
            </p:column>
         </p:dataTable>              
    </h:form>
    

    Also see this

    【讨论】:

    • 我必须为 'forElement' ryt 提供总路径?
    • 是的。像这样 formId:tableId:columnId:filter
    【解决方案2】:

    我遇到了同样的问题,在阅读了p:watermark 之后,我决定我不喜欢提供过滤器的完整路径。我在p:dataTable 定义下添加了以下sn-p:

    <script type="text/javascript">
        $('input.ui-column-filter').attr('placeholder','#{msgs['filter_placeholder']}"');
    </script>
    

    当然,它会丰富 ALL 表中的 ALL 列过滤器,但是您始终可以将数据表 id 附加到查询中...

    【讨论】:

      猜你喜欢
      • 2013-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多