如何限制 <g:select> 的多项选择

How to limit a multiple selection of a <g:select>

我想将多项选择限制为 1,因为我想要这种格式的列表。我希望始终查看所有列表而不想要下拉列表,如果我退出 multiple="multiple" 会出现一个下拉列表。

所以,这是代码:

gsp:

<div class="field ${hasErrors(bean: cmd, field: 'subtypes', 'error')}">
    <label for="subtypes">
        <g:message code="requestSRO.requestSubtype.label"/>
    </label>
    <g:select name="subtypes" from="${requestSubtypes}" optionKey="code" multiple="multiple" optionValue="description" value="${cmd?.subtypes}" style="width: 100%;height: 100px" disabled="${!requestSubtypes ? true: false}"/>
</div>

我认为 <g:select> 没有 属性 来设置选择的最大限制。

不要使用 multiple="multiple" 来改变 select 的显示方式。相反,将 size 属性设置为大于 1 的数字。

<g:select size="2" name="subtypes" from="${requestSubtypes}" optionKey="code" optionValue="description" value="${cmd?.subtypes}" style="width: 100%;height: 100px" disabled="${!requestSubtypes ? true: false}"/>

如果要显示整个子类型列表,可以设置size="${requestSubtypes.size()}"