bố cục của h: selectOneRadio có thể nằm ngang hoặc dọc, vì vậy có cách tôi có thể thực hiện một số bố cục tùy chỉnh. Ví dụ, thay vì hiển thị 8 nút radio, hiển thị chúng trong 2 hàng với 4 hàng trên mỗi hàng? Vui lòng cung cấp câu trả lời của bạn bên cạnh giải pháp PrimeFaces p: selectOneRadio, nó sử dụng CSS3 khiến IE8 hiển thị nút radio theo hình chữ nhật.Cách bố trí tùy chỉnh h: selectOneRadio
Trả lời
Không chính xác như vậy, nhưng bạn có thể sử dụng Tomahawk's<t:selectOneRadio>
với thuộc tính layout
được đặt thành "spread"
để hiển thị nút radio không đánh dấu. Sau đó, bạn có thể sử dụng <t:radio>
để đặt các nút radio riêng lẻ trong đánh dấu theo cách bạn muốn, chẳng hạn như trong một <h:panelGrid columns="4">
.
Ví dụ:
<t:selectOneRadio id="foo" value="#{bean.selectedItem}" layout="spread">
<f:selectItems value="#{bean.availableItems}" />
</t:selectOneRadio>
<h:panelGrid columns="4">
<t:radio for="foo" index="0" />
<t:radio for="foo" index="1" />
<t:radio for="foo" index="2" />
<t:radio for="foo" index="3" />
<t:radio for="foo" index="4" />
<t:radio for="foo" index="5" />
<t:radio for="foo" index="6" />
<t:radio for="foo" index="7" />
</h:panelGrid>
hoặc ngay cả khi số lượng các nút radio là không xác định
<h:panelGrid columns="4">
<c:forEach items="#{bean.availableItems}" varStatus="loop">
<t:radio for="foo" index="#{loop.index}" />
</c:forEach>
</h:panelGrid>
(lưu ý rằng <ui:repeat>
là không phù hợp vì nó chạy trong quá trình xem thời gian render và do đó kết thúc như là một cột duy nhất của <h:panelGrid>
, bạn cần phải sử dụng HTML thuần túy <table>
thay thế)
Cảm ơn bạn rất nhiều :) Tomhawk làm việc cho bây giờ, nhưng khi tôi tải về Tomhawk qua mvn, nó tải về rất nhiều tập tin jar thêm, mà dường như một chút overkill cho tôi. Tôi thấy bạn có một hướng dẫn về tạo kiểu selectOneMenu bằng cách mở rộng MenuRenderer, tôi sẽ xem xét nó, có lẽ nó sẽ giúp tôi tạo ra một thành phần selectOneRadio tùy chỉnh. Cảm ơn bạn rất nhiều –
Tomahawk là mã nguồn mở, bạn cũng có thể xem qua nó. Vâng, nó đi kèm với một loạt các phụ thuộc. Đối với một mình 't: selectOneRadio', chỉ những phụ thuộc Apache Commons là đủ, tất cả những thứ khác là không cần thiết. – BalusC
Yup, nó đi kèm với rất nhiều phụ thuộc. Chúng tôi thêm phụ thuộc vào ứng dụng của chúng tôi qua maven, và tôi làm '
- 1. Thêm khoảng cách giữa hai nút radio của h: selectOneRadio
- 2. Bố trí tùy chỉnh cho RadioButton
- 3. xem tùy chỉnh với bố trí
- 4. Android ProgressBar UI bố trí tùy chỉnh
- 5. tải bố trí trong onCreateView cho sở thích tùy chỉnh
- 6. Bố trí tùy chỉnh, Văn bản tuyệt vời 2
- 7. Điều chỉnh Gridbag bố trí
- 8. con trỏ ngoại lệ Null với giao diện tùy chỉnh trong cách bố trí xml
- 9. Android - Sử dụng SurfaceView tùy chỉnh trong cách bố trí XML
- 10. Android: Bố cục Spinner Tùy chỉnh
- 11. ScrollView tạo bố cục tùy chỉnh ẩn
- 12. Bố cục tùy chỉnh Android cho AutoCompleteTextView
- 13. Làm cách nào để tùy chỉnh bố cục WPF StatusBar?
- 14. Nút có bố cục XML tùy chỉnh
- 15. Làm thế nào để thiết lập giá trị Boolean để một 'Có' hoặc 'Không' h: selectOneRadio
- 16. Mở rộng h: outputText cho chức năng tùy chỉnh
- 17. Bố cục được bố trí khi nào?
- 18. Làm thế nào để thiết lập giá trị mặc định của h: nút selectOneRadio
- 19. Bao gồm bố trí với thuộc tính tuỳ chỉnh
- 20. Bố trí không bị phồng lên trong thành phần tùy chỉnh android
- 21. Cách thêm chế độ xem tùy chỉnh vào bố cục?
- 22. UICollectionView: bố cục tùy chỉnh hoạt ảnh
- 23. Cách tùy chỉnh vị trí của hộp cảnh báo
- 24. Cách khởi tạo bố cục cho tùy chọn tùy chỉnh, sử dụng thuộc tính android: layout
- 25. Bố trí Android - vấn đề căn chỉnh với ImageView
- 26. Bảng điều khiển tùy chỉnh với công cụ bố cục
- 27. findViewById() trả về null cho thành phần tùy chỉnh trong cách bố trí XML, không cho các thành phần khác
- 28. Bố cục tùy chỉnh Android - onDraw() không bao giờ được gọi là
- 29. ListView với Bố cục hàng tùy chỉnh - Android
- 30. bố trí bên trong bố trí trong R
Bản sao có thể có của http://stackoverflow.com/questions/1150717/breaking-up-radio-buttons-into-columns-in-jsf/1152921 – Ravi