选择选项最大显示值

时间:2020-08-04 14:51:49

标签: javascript html css dom

有什么方法可以设置选项标签的最大数量,如果超出此数量,则会显示滚动条?

我尝试设置此

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

但是它将立即显示3个选项和滚动条。我无法再使用所有这些选项单击并打开下拉菜单。

我尝试使用JavaScript来实现

<select onFocus="maxSize">
...
...
</select>

function maxSize(e){
  e.target.size = "10"
}

但是结果几乎是相同的。使用该功能,我可以单击并打开下拉菜单,但是在选择了其中一个选项后,下拉菜单不会关闭。

1 个答案:

答案 0 :(得分:0)

使用on"whatever"()之类的onevent handler attributes时需要提供括号

此外,事件对象也不会传递给事件处理程序,因此您应该传递this,然后它将保留对触发该事件的元素的引用

<select size="3" onfocus="maxSize(this)">
  <option>1</option>
  <option>2</option>
  <option>3</option>
  <option>4</option>
  <option>5</option>
</select>

<script>
  function maxSize(el) {
    el.size = "10"
  }
</script>