Tôi có một webapp JSF 2 đang sử dụng các thành phần PrimeFaces 3.0. Trên một trang, tôi đang sử dụng thành phần <p:dataTable>
bên trong một thành phần tổng hợp để hiển thị một bảng các đối tượng. Tôi đã thành công với thành phần này cho đến khi tôi cố gắng sử dụng tùy chọn scrollable="true"
. Bây giờ các tiêu đề cột trong bảng không phù hợp với nội dung cột. Tôi đã thử sử dụng IE 7 (trình duyệt mục tiêu cho môi trường máy khách của tôi) và Firefox 4.0.1 để so sánh. Cả hai triển lãm được vấn đề, nhưng nó là rõ rệt hơn trong IE 7.Thủ tướng Chính phủ 3.0 - <p:dataTable> tiêu đề không xếp hàng bằng cách sử dụng scrollable = "true"
IE 7 screenshot:
Firefox 4.0.1 screenshot:
Dưới đây là một số mã trang Facelet tôi:
<p:dataTable
id="vesselsDataTable"
value="#{cc.attrs.vesselAdapterList}"
var="currentRow"
selection="#{editVesselBean.selectedRow}"
selectionMode="single"
scrollable="true"
height="500">
<p:column
id="imoColumn"
style="width:45px"
sortBy="#{currentRow.imo}">
<f:facet name="header">
<h:outputText value="IMO" />
</f:facet>
<div class="#{currentRow.imoStyleClass}">
<h:outputText value="#{currentRow.imo}"
</div>
</p:column>
<p:column
id="notesIndicatorColumn"
style="width:35px"
sortBy="#{currentRow.hasNotes}">
<f:facet name="header">
<h:outputText value="#{bundle.labelNotes}" />
</f:facet>
<h:outputText
styleClass="noteIndicator"
id="vesselNotesIndicator"
value="#{bundle.stringNoteIndicatorText}"
title="#{currentRow.notesAsTooltipText}"
rendered="#{currentRow.hasNotes}"
</p:column>
<ui:remove>other column definitions omitted for brevity...</ui:remove>
<p:dataTable>
Mỗi cột của tôi có một phong cách có chiều rộng cố định bằng pixel xác định, và các DataTable chính nó có height
thuộc tính thiết lập. Điều này có vẻ giống như những gì được hiển thị trong bản giới thiệu Showcase và trong bản PDF 2.2.
Để báo hướng dẫn:
cuộn là một cách để hiển thị dữ liệu với tiêu đề cố định, để kích hoạt tính năng cuộn đơn giản đặt tùy chọn cuộn true, xác định chiều cao cố định bằng pixel và thiết lập chiều rộng cố định cho mỗi cột.
Bất cứ ai có thể cho tôi biết tôi đang làm gì sai?
Tôi đang sử dụng PrimeFaces 3.0-M2-SNAPSHOT hiện tại với Mojarra 2.1 JSF RI hiện tại.
CẬP NHẬT
tôi đã chuyển đến PrimeFaces 3,0-M2 (không chụp) phát hành và vấn đề vẫn còn tồn tại. Theo các đề xuất của Maple và BalusC, tôi đã tạm thời loại bỏ việc sắp xếp cột và thử các loại tài liệu khác nhau. Cuối cùng tôi đã giải quyết trên loại tài liệu XHTML 1.0 Strict. Nó không hiển thị bất kỳ sự cải thiện trong IE 7, nhưng không hiển thị một số cải tiến trong Firefox 4.
IE 7 với XHTML 1.0 Strict
Firefox 4 với XHTML 1.0 Strict
<p:dataTable>
nằm trong một <p:panel>
nằm trong một số <p:layout>
. Điều này có liên quan không?
Nó gần như trông giống như trên Firefox 4 rằng chênh lệch chênh lệch đầu trang gần bằng với chiều rộng của thanh cuộn. Tôi nhận thấy bạn có một themeroller, không chiều rộng tiêu đề này thay đổi ở tất cả khi bạn chuyển đổi chủ đề? –
Tôi đã kiểm tra trang vấn đề của Primefaces http://code.google.com/p/primefaces/issues/list và không tìm thấy vấn đề này được liệt kê dưới dạng lỗi đã biết. Có vẻ như đó có thể là vấn đề đặt độ rộng cố định thành cột, trên bảng dữ liệu có thể cuộn, trên Firefox và các phiên bản trước của IE. Trên một mặt lưu ý, THANK YOU dành thời gian để viết một câu hỏi rõ ràng và súc tích. Tôi đang trở nên mất tinh thần bởi số lượng câu hỏi khủng khiếp trên trang web này. –
Điều gì sẽ xảy ra khi bạn loại bỏ thuộc tính 'sortBy' của cột. Có lẽ có các kiểu CSS trong các nút sắp xếp các phần tử DOM đang cản trở? –