如何隐藏h:selectManyListbox默认滚动

时间:2013-04-23 08:14:40

标签: jsf jsf-2

我hava h:selectManyListbox size = 3 并且出现默认的禁用滚动,我想隐藏它,并在必要时显示它(如果尺寸> 3)。

请告知如何做到这一点,谢谢。

2 个答案:

答案 0 :(得分:1)

类似这样的事情

<h:selectManyListbox styleClass="#{(myBean.hideScroll gt 3)?'':'myHideScrollClass'}"...

你的css在哪里

.myHideScrollClass {

 }

或者有点简化

 <h:selectManyListbox style="#{(myBean.hideScroll gt 3)?'':'overflow-y:hidden;'}"...

此外,您可以使用myBean.hideScroll gt 3代替myBean.myList.size() gt 3,但要确保myList不是null

答案 1 :(得分:0)

<h:selectManyListbox />渲染'select'和'option'html标记。您无法在这样的细节中控制选择框的外观,它的显示取决于系统。 你可以使用一些技巧(条件 size = 3 :你可以使用@Daniel方法):

<style type="text/css">
 .test { 
    display:inline-block; 
    vertical-align:top; 
    overflow:hidden; 
    border:solid grey 1px; 
 }
 .test select { 
    padding:10px; 
    margin:-5px -20px -5px -5px; 
 }
</style>
<div class="test">
<h:selectManyListbox />
</div>