php - 限制由 php 填充的下拉菜单显示的选项数量

标签 php jquery html css

我有一个下拉菜单如下:

   <select onchange="random_function()" id='choice' >
      <option selected="selected" >
         Make a choice
      </option>
  </select>

我通过 <select> 中的 php 请求填充它标记如下:

<?php
    include 'config.php';
    $query = $pdo->query('
                SELECT choices
                FROM allTheChoices'   
    );
    while ($row = $query->fetch()){
       echo "<option>".$row['choices']."</option>";
    }
?>

目前,我的数据库不完整,我只有 2 个选项可以显示,但将来会有很多(100+)。

我的目标是找到一种方法让选择只显示 10 个选项,并且它应该显示一个滚动条以查看所有剩余的选项。

我已经尝试使用 <select size="10">但是下拉菜单的设计完全改变了而且很糟糕。 您是否有一种简单的方法可以在不改变设计的情况下做到这一点?

最佳答案

使用这段代码来实现我想要的:

 <select  style="position:absolute;" onmousedown="if(this.options.length>8)
{this.size=8;}"  onchange='this.size=0;' onblur="this.size=0;" >

确保使用以下内容以避免容器 div 在选择选项时扩展:

style="position:absolute;"

并使用您要显示的选项数编辑以下代码(本例中使用 10 个):

onmousedown="if(this.options.length>10){this.size=10;}"

所以我使用的整个 html 代码是:

  <select  style="position:absolute;" onmousedown="if(this.options.length>8)
    {this.size=8;}"  onchange='this.size=0;' onblur="this.size=0;" >
          <option selected="selected" >
             Make a choice
          </option>
  </select>

关于php - 限制由 php 填充的下拉菜单显示的选项数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44829717/

相关文章:

javascript - 将 GIF 作为 div 的背景播放时调整其大小

jquery - 在 .js.erb 文件中使用 $(this) - Ruby on Rails AJAX

php - HTML 错误 : Display Inline-Block, 不是内联的?

document.write() 的 JavaScript 替代方案

jquery - 可折叠菜单对于移动横向来说太长

php - 链接数据库链接,通过 B、F、G 从 X 到 Y

php - Javascript函数发布和调用php脚本

php - 拉维尔 : same table relationship error

html - 背景图像不会显示

php - 在两个不同的用户表之间共享 wordpress 站点