2013-01-04 19 views
5

Tôi có một mẫu 3 trường Primefaces và một thẻ <p:messages> để hiển thị một số thông báo xác thực phía máy chủ. Nhưng tôi không muốn hiển thị các thông báo phía máy khách liên quan đến tùy chọn required="true", chỉ cần đánh dấu trường nhập bằng màu đỏ.Thủ tướng - Không hiển thị thông báo cho các trường bắt buộc, chỉ cần đường viền ánh sáng

Có cách nào để thực hiện điều đó với Primefaces không?

Trả lời

12

Bạn có thể đặt <p:messages globalOnly="true"/>, thao tác này sẽ chỉ hiển thị các thư chung không được đính kèm vào bất kỳ trường cụ thể nào. Ngoài ra, bạn có thể sử dụng Primefaces '<p:outputLabel/> cho nhãn của các yếu tố đầu vào, nó sẽ thêm lỗi css vào các yếu tố đầu vào.

Bạn cũng nên cập nhật biểu mẫu khi bạn gửi. Ví dụ, nếu bạn làm điều đó với nút lệnh thêm update="form_id"

+0

Tôi đặt tùy chọn globalOnly nhưng không có may mắn . Các tin nhắn không được hiển thị nhưng CSS cũng không được hiển thị. Ngoài ra, '' không hoạt động với '' (đó là giới hạn Primefaces). – CountD

+2

Bạn cũng nên cập nhật biểu mẫu khi bạn gửi. Ví dụ nếu bạn làm điều đó với nút lệnh thêm 'update =" form_id "' – partlov

+0

Và, tất nhiên, bây giờ nó hoạt động. Cảm ơn rất nhiều về các mẹo! – CountD

0

tôi đã làm nó như thế này ->render = "# {không facesContext.validationFailed}"

<p:messages 
    rendered="#{not facesContext.validationFailed}" 
    id="msg" 
    showDetail="true" 
    autoUpdate="false" 
    closable="true" /> 
Các vấn đề liên quan