<select multiple =“”> - 如何只允许选择一个项目?</select>

时间:2011-03-17 11:14:42

标签: html html-select

我有一个<SELECT multiple>字段,有多个选项,我想允许它同时只选择一个选项,但用户可以按住CTRL键并一次选择更多项目。

有什么方法可以做到吗? (我不想删除'倍数')。

8 个答案:

答案 0 :(得分:263)

只是不要使它成为选择倍数,而是设置它的大小,例如:

  <select name="user" id="userID" size="3">
    <option>John</option>
    <option>Paul</option>
    <option>Ringo</option>
    <option>George</option>
  </select>

工作示例: https://jsfiddle.net/q2vo8nge/

答案 1 :(得分:24)

如果用户一次只能选择一个选项,只需删除“多个” - 进行正常选择:

  <select name="mySelect" size="3">
     <option>Foo</option>
     <option>Bar</option>
     <option>Foo Bar</option>
     <option>Bar Foo</option>
  </select>

Fiddle

答案 2 :(得分:9)

为什么不删除multiple属性?该属性的整个目的是为浏览器指定可以从给定的select元素中选择多个值。如果只选择一个值,则删除该属性,浏览器将知道只允许一个选择。

使用您拥有的工具,这就是他们的目标。

答案 3 :(得分:1)

默认情况下,您只需要一个选项,但用户可以通过按CTRL键选择多个选项。这已经(已经)确切地说SELECT多数是如何表现的。

请参阅:http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_multiple

你能澄清一下你的问题吗?

答案 4 :(得分:1)

我在搜索谷歌后来到这里,并在我的结束时改变了事情。

所以我只是更改了这个示例,它将在运行时使用jquery。

$('select[name*="homepage_select"]').removeAttr('multiple')

http://jsfiddle.net/ajayendra2707/ejkxgy1p/5/

答案 5 :(得分:1)

我和select \ multi-select有过一些交易 这就是我的诀窍

<select name="mySelect" multiple="multiple">
    <option>Foo</option>
    <option>Bar</option>
    <option>Foo Bar</option>
    <option>Bar Foo</option>
</select>

答案 6 :(得分:1)

<select name="flowers" size="5" style="height:200px">
 <option value="1">Rose</option>
 <option value="2">Tulip</option>
</select>

这个简单的解决方案可以直观地获取选项列表,但只能选择一个。

答案 7 :(得分:0)

最后一个答案,但可能会对其他人有所帮助,这是在不删除'multiple'属性的情况下的方法。

$('.myDropdown').chosen({
    //Here you can change the value of the maximum allowed options
    max_selected_options: 1
});