h:selectmany列表框使"choose"选项在至少选择一个选项时不可选择



是否可以在<h:selectManyListbox>中有一个默认选项,例如"--choose--",当没有选择任何选项时可以选择。选择某个值时,它必须是不可选择的。

<h:selectManyListbox value="#{bean.value}"
        class="form-control">
        <f:selectItems value="#{bean.dropdownValues}" var="value" itemLabel="#{value}" itemValue="#{value}"/>            
</h:selectManyListbox>

只需将其添加为另一个<f:selectItem>,并在更改事件期间选择任何值时寻求一些JavaScript的帮助以禁用它。

<h:selectManyListbox ... onchange="options[0].disabled=!!value">
    <f:selectItem itemLabel="--choose--" itemValue="#{null}" />
    <f:selectItems ... />
</h:selectManyListbox>

options[0]是指选择元素的第一个选项。!!value基本上将所选项目值转换为适用于disabled属性的boolean(当它不为空/null时将true)。

另请参阅:

  • 在 JSF 中将"未选择任何内容"选项添加到 selectOneMenu 的最佳方法

相关内容

  • 没有找到相关文章

最新更新