不允许多选的情况下,在多选显示样式中选择元素。

5
我希望拥有一个元素,显示多选样式(它是一个框而不是下拉菜单),但只允许您一次选择一个选项。这是否可能?

所以您想要这个,而不使用下拉列表? - TStamper
是的,我不想使用下拉菜单。 - Sam Lee
4个回答

14

这将显示一个类似下拉框的选择元素,一次只允许选择一个项目:

<select size="3">
    <option>1</option>
    <option>2</option>
    <option>3</option>
</select>

size 属性控制了控件中可见的行数。如果您想允许选择多个项目,请向 select 元素添加 multiple 属性:

<select size="3" multiple="multiple">

这个是否奏效完全取决于浏览器;HTML标准没有规定这种行为,“size”仅适用于浏览器选择将SELECT呈现为列表框时,即使指定了“size”,浏览器也不必这样做(在这一点上它非常明确)。 - Nicholas Knight
3
问题不是“HTML标准是否包括这个”,而是“是否可能实现这种行为”。虽然你指出了这取决于实现(顺便感谢你的指出),但我现在可以测试的IE和FF浏览器都已经实现了这种行为。所以,是否可能呢?是的。是否保证在所有可能的用户代理中都能得到这种行为?否。 - Fredrik Mörk

3

SELECT元素的呈现方式取决于实现。在大多数浏览器中,'multiple="1"'会得到一个(可能是滚动的)选项框,而'multiple="0"'会得到一个下拉框,这只是巧合。

没有标准来表示“我想要一个列表框,只允许选择一个选项”。

另请参阅:

http://www.w3.org/TR/html401/interact/forms.html#h-17.6


2

您可以编写JavaScript代码,以使任何额外的选择在单击时取消选择。


0
怎么样使用带有链接的有序列表<ol>或无序列表<ul>来列出列表项<li>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接